public class testString{ public static void main(String[] args) { String a="cool"; String s1=""; StringBuilder s2=new StringBuilder(); final int N=30000; long t0=System.currentTimeMillis(); for (int i=0;i<N ;++i ) { s1+=a;//String类创建之后不会再做修改和变动,即immutable(不可改变的),所以使用+进行字符串拼接的话,会先创建一个StringBuilder对象,然后
//调用其append方法,再调用toString()方法转化为String类型,所以在循环中使用+拼接字符串开销很大,使用StringBuilder就很快 } long t1=System.currentTimeMillis(); for (int i=0;i<N ;++i ) { s2.append(a);//使用StringBuilder就很快
} long t2=System.currentTimeMillis(); System.out.println(t1-t0); System.out.println(t2-t1); System.out.println(s1); System.out.println("------------------"); System.out.println(s2); } }