[英]When to use String#concat() method in Java?
我已经了解了有关字符串连接性能的不同主题。 几乎答案建议使用StringBuilder
或StringBuffer
来减少开销成本(如果连接语句在循环外,则为+
运算符)。 很清楚,但我仍然想知道为什么 Java 有 String format()
和concat()
方法,尽管它无效。 性能测试在这里:链接。 有人提到 String format()
可能对Localization
目的有用(我不太明白,但是我已经有一个关键字可以稍后搜索),但剩下的一个目的是什么? 它仅对向后兼容有用吗?
String#concat
和+
存在是为了在类型 String 上提供一组简约的操作。
如果多次使用,它们效率不高。
但是他们有自己的权利,因为您不想使用 StringBuilder 指定类型操作"xxx" + "yyy"
。 (此外,它是一个编译时串联。)
StringBuffer
是一个错误恕我直言。 较新的StringBuilder
较慢,因为它是同步的,但很少会在两个线程(无序)中添加一些东西。
String::concat
可能是对流减少等有用的方法引用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.