我们如何比较Java中的StringBuilder和StringBuffer?
该StringBuffer的 对象通常是安全的使用多线程环境中多个线程可能试图访问同一StringBuffer的 同时对象。该StringBuilder的 是用于替换线程安全StringBuffe[R类和它的作品多,因为它已经没有更快的同步 方法。如果我们在单个线程中执行大量的String操作,则使用此类时可以获得很多性能 。
示例
public class CompareBuilderwithBufferTest {
public static void main(String []args) { stringBufferTest();
stringBuilderTest(); }
public static void stringBufferTest() {
long startTime = System.nanoTime();
StringBuffer sb = new StringBuffer();
for (int i=0; i < 1000; i++) {
sb.append((char) 'a');
}
System.out.println("StringBuffer test: " + (System.nanoTime() - startTime));
}
public static void stringBuilderTest() {
long startTime = System.nanoTime();
StringBuilder sb = new StringBuilder();
for (int i=0; i < 1000; i++) {
sb.append((char) 'a');
}
System.out.println("StringBuilder test: " + (System.nanoTime() - startTime));
}
}输出结果
StringBuffer test: 192595 StringBuilder test: 85733
热门推荐
2 红丝绒戚风蛋糕
3 夹心小甜点
4 南瓜甜点
6 粘米粉蒸蛋糕
7 酸奶华夫饼
9 红柚鸡蛋糕
10 葡萄干蛋糕
11 紫薯蛋糕卷
13 纸杯裱花小蛋糕
14 果酱奶酪蛋糕
15 日式樱花蔓越莓大福
16 草莓蛋糕卷
17 卡仕达长崎杯子蛋糕