一、假设
1、假设你工作了好多年,Java用的6的一批
2、假设偶然的机会,你遇到的大字符串的处理
3、假设你没有留意过String支持的最大长度
4、假设有一天,你无意中通过main方法处理某个字符串时,报了“Error:(21, 8) java: 对于常量池来说, 字符串 "{"000":[[0,0,"河西学院"]..." 的 UTF8 表示过长”异常
二、解决方案
1、通过StringBuilder进行处理
2、修改前
String str = "[1]假设超过了65535................[2]这里是大于的部分.....";
3、修改后
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("[1]假设超过了65535................");
stringBuilder.append("[2]这里是大于的部分.....");
String str = stringBuilder.toString();
三、说明
1、Java中,String直接接收字符串,最大值为65535个字节,是字节。
2、StringBuilder支持动态扩容,所以稍微大点儿的,可以通过StringBuilder进行处理。
3、如果是MB单位或者GB甚至更大的单位,建议使用大数据处理思维,进行拆分处理。