public class StringBuilderClearTest {
public static void main(String[] args){
long time = System.currentTimeMillis();
System.out.println("begin: " + time);
StringBuilder sbMain1 = new StringBuilder();
StringBuilder sbMain2 = new StringBuilder();
StringBuilder sbMain3 = new StringBuilder();
StringBuilder sb1 = null;
for(int i=0; i<1000000; i++){
sb1 = new StringBuilder("a1");
sb1.append("a2");
sb1.append("a3");
sbMain1.append(sb1);
}
long time1 = System.currentTimeMillis();
StringBuilder sb2 = new StringBuilder();
for(int i=0; i<1000000; i++){
sb2.delete(0, sb2.length());
sb2.append("b1");
sb2.append("b2");
sb2.append("b3");
sbMain2.append(sb2);
}
long time2 = System.currentTimeMillis();
StringBuilder sb3 = new StringBuilder();
for(int i=0; i< 1000000; i++){
sb3.setLength(0);
sb3.append("c1");
sb3.append("c2");
sb3.append("c3");
sbMain3.append(sb3);
}
long time3 = System.currentTimeMillis();
System.out.println(sbMain1.length());
System.out.println(sbMain2.length());
System.out.println(sbMain3.length());
System.out.println("New耗时: " + (time1 - time));
System.out.println("delete耗时: " + (time2 - time1));
System.out.println("setLength: " + (time3 - time2));
}
}