何时在Java中使用StringBuilder
StringBuilder在Java中,通常最好使用a 进行字符串连接。总是这样吗?
我的意思是:创建StringBuilder
对象,调用append()
方法并最终toString()
已经很小,然后将现有字符串与+运算符连接成两个字符串的开销是小的,还是建议仅用于两个以上的字符串?
如果有这样的阈值,它取决于什么(也许是字符串长度,但以哪种方式)?
最后,你是否会以+级联的可读性和简洁性为代价,StringBuilder
以较小的情况(例如两个,三个或四个字符串)的性能为代价?
StringBuilder
在过时的Java优化技巧以及Java都市神话中,都提到过对常规连接进行显式使用是过时的。
回答:
如果你在循环中使用String串联,则类似这样,
String s = "";for (int i = 0; i < 100; i++) {
s += ", " + i;
}
那么你应该使用StringBuilder
(而不是StringBuffer
)而不是String
,因为它速度更快并且消耗的内存更少。
如果你只有一条语句,
String s = "1, " + "2, " + "3, " + "4, " ...;
那么你可以使用Strings
,因为编译器会StringBuilder
自动使用。
以上是 何时在Java中使用StringBuilder 的全部内容, 来源链接: utcz.com/qa/417917.html