在Java中,我们如何比较StringBuilder和StringBuffer?
-
王林
转载
-
2023-08-28 15:57:06
853浏览
StringBuffer对象通常可以安全地在多线程环境中使用,其中多个线程可能会尝试访问同一个StringBuffer对象同时。 StringBuilder是线程安全的 StringBuffer 类的替代品,它的工作速度要快得多,因为它没有同步 >方法。如果我们在单个线程中执行大量字符串操作,则使用此类可以提高性能。
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
以上就是在Java中,我们如何比较StringBuilder和StringBuffer?的详细内容,更多请关注php中文网其它相关文章!
声明:本文转载于:tutorialspoint,如有侵犯,请联系admin@php.cn删除