字符串拼接的性能问题:由于Java内存机制,过多字符串对象容易导致内存溢出,程序崩溃。
package day01;
/**
* 字符串拼接的性能问题
* @author kaixu
*
*/
public class StringDemo10 {
public static void main(String[] args) {
String str = "a";
for(int i=0;i<10000000;i++){ //根据Java内存机制,过多字符串对象容易导致内存溢出,程序崩溃。
str += "a";
}
}
}
解决方法:使用Java为String量身打造的StringBuilder类:
package day01;
public class StringBuilderDemo2 {
public static void main(String[] args) {
StringBuilder builder = new StringBuilder("a");
for(int i=0;i<100100;i++){
builder.append("a");
}
System.out.println("执行完毕!");
}
}