Java中StringBuffer和StringBuilder的比较

StringBuffer和StringBuilder是java的两个类,用于字符串。只要需要对字符串进行大量修改,就可以使用它们。可以一次又一次地修改StringBuffer和StringBuilder对象。

StringBuffer和String Builder之间的唯一区别是,StringBuilder方法不同步,因为它们不是线程安全的,因为两个线程可以同时调用StringBuilder方法。另一方面,字符串缓冲区是线程安全的。

最好使用StringBuilder,因为它比String Buffer快得多。

让我们举一个例子来检查哪个更快。

public class ExComparison2 {

public static void main(String arg[])

{

long st,et;

StringBuffer str1=new StringBuffer();//字符串缓冲区类对象

st=System.currentTimeMillis(); //记录当前时间

for(int i=0;i<1000000;i++)

{

//字符串缓冲区的append方法将数据添加到字符串对象中。

str1.append("Testing StringBuffer ");

}

et=System.currentTimeMillis();

System.out.println("String Buffer Takes "+(et-st)+" milliSeconds");

//(et-st)显示字符串缓冲区所花费的时间。

StringBuilder str2=new StringBuilder();//字符串生成器类对象

st=System.currentTimeMillis();

for(int i=0;i<1000000;i++)

{

//字符串缓冲区的append方法将数据添加到字符串对象中。

str2.append("Testing StringBuffer ");

}

et=System.currentTimeMillis();

System.out.println("String Builder Takes "+(et-st)+" milliSeconds");

////(et-st)显示“字符串”构建器花费的时间。

}

}

输出结果


如您所见,StringBuilder比StringBuffer花费的时间更少。

以上是 Java中StringBuffer和StringBuilder的比较 的全部内容, 来源链接: utcz.com/z/334675.html

回到顶部