您的位置:首页 > 产品设计 > UI/UE

String,StringBuffer,StringBuilder性能比较

2009-10-07 09:34 471 查看
代码如下:

package zxh.test;
public class CompareTime {
public static void main(String[] args) {
String str = "";
long t1 = System.currentTimeMillis();
for(int i=0 ; i< 20000 ; i++)
str += i;
long t2 = System.currentTimeMillis();
System.out.println("String的+=连接方法耗时为:" + (t2-t1) + "ms");

StringBuffer strBuf = new StringBuffer();
t1 = System.currentTimeMillis();
for(int i=0 ; i< 20000 ; i++)
strBuf.append(i);
t2 = System.currentTimeMillis();
System.out.println("StringBuffer的连接方法耗时为:" + (t2-t1) + "ms");

StringBuilder strBul = new StringBuilder();
t1 = System.currentTimeMillis();
for(int i=0 ; i< 20000 ; i++)
strBul.append(i);
t2 = System.currentTimeMillis();
System.out.println("StringBuilder的连接方法耗时为:" + (t2-t1) + "ms");

}
}

显示结果如下:

String的+=连接方法耗时为:7562ms
StringBuffer的连接方法耗时为:16ms
StringBuilder的连接方法耗时为:0ms

第二次运行如下:

String的+=连接方法耗时为:8266ms
StringBuffer的连接方法耗时为:0ms
StringBuilder的连接方法耗时为:0ms

从上面可以看出,StringBuilder运行最快,StringBuffer次之(线程安全的),String最慢。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: