String、StringBuilder

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); } }
原文地址:https://www.cnblogs.com/lz3018/p/4785123.html