美文网首页编程语言-Java系列
java中一个String可以有多大

java中一个String可以有多大

作者: 全都是泡沫啦 | 来源:发表于2020-01-09 11:46 被阅读0次

    对于java中有2种创建String的方式第一种: String a = "hello world" 第二种 String b = new String("hello world")
    一个字符串的大小限制有如下
    1:常量池大小(1.8移到堆中)的限制 堆内存的限制
    2: 常量池 utf-8字符串的结构 tag [u1] length [u2] bytes [length] u2为无符号16bit 长度最大为65535 bytes
    3: new String 结构 为 char[] + hash char 数组最大值取决于 int :
    Array.newInstance(char.class, Integer.MAX_VALUE-1); java.lang.OutOfMemoryError: Requested array size exceeds VM limit
    Array.newInstance(char.class, Integer.MAX_VALUE-2); java.lang.OutOfMemoryError: Java heap space

    相关文章

      网友评论

        本文标题:java中一个String可以有多大

        本文链接:https://www.haomeiwen.com/subject/qnlyactx.html