怎么解决java常量字符串过长?
String内部是以char数组的形式存储,数组的长度是int类型,那么String允许的最大长度就是Integer.MAX_VALUE = 2^31 - 1 = 2147483647。又由于java中的字符是以16位存储的,因此大概需要4GB的内存才能存储最大长度的字符串。
在永清等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供做网站、成都网站建设 网站设计制作按需策划,公司网站建设,企业网站建设,成都品牌网站建设,网络营销推广,外贸网站建设,永清网站建设费用合理。
不过这仅仅是对字符串变量而言,如果是字符串常量,如“abc”、”1234”之类写在代码中的字符串str,那么允许的最大长度取决于字符串在常量池中的存储大小,也就是字符串在class格式文件中的存储格式:
CONSTANT_Utf8_info {
u1 tag;
u2 length;
u1 bytes[length];
}
u2是无符号的16位整数,因此理论上允许的string str的最大长度是2^16-1=65535。然而实际测试表明,允许的最大长度仅为65534,超过就编译错误。
一、sql语句字符串长度太长导致的报错代码
代码A:
String str = "567890123456789...0123456789";//由于字符串长度太长,所以省略一部分,长度是65535;
System.out.println(str.length()); //编译报错:Error:(14, 22) java: 常量字符串过长。
代码B:
String str = "67890123456789...0123456789";//由于字符串长度太长,所以省略一部分,长度是65534;
System.out.println(str.length()); //编译通过,运行结果为:65534。
代码C:
String str = "67890123456789...0123456789";//由于字符串长度太长,所以省略一部分,长度是65534;
str = "5" + str;
System.out.println(str.length()); //编译通过,运行结果为:65535。
参考资料
庄周梦蝶.博客[引用时间2018-1-22]
idea java代码过长怎么解决
需要配置一下idea的配置文件即可
首先找到idea的安装目录,然后找到bin目录中的idea.properties文件
修改文件中这一行后面的值为9999
idea.max.intellisense.filesize=99991
重启idea,就好啦
Java代码编译报错
1、java 编译错误,说明你的java代码源文件存在明显的语法错误。
2、请仔细看你的源代码,错误信息提main方法所在这一行有语法错误。
3、你把public 写成了 publec 了吧,低级错误。
4、希望对你有帮助。
当前文章:java编译报错代码过长,java 代码过长 报错
文章链接:http://scyingshan.cn/article/hoggsj.html