什么时候在 Java 中使用 String#concat() 方法?

When to use String#concat() method in Java?

我讨论过有关字符串连接性能的不同主题。几乎回答建议使用 StringBuilderStringBuffer 来减少开销成本(或 + operator if concatenation statement outside the loop)。很清楚了,但是我还是想知道为什么Java有Stringformat()concat()方法虽然没有效果。此处进行性能测试:link。有人提到 String format() 可能对 Localization 有用(我不太了解,但是我已经有一个关键字可以稍后搜索),但是剩下的一个有什么用呢?它只对向后兼容有用吗?

String#concat+ 的存在是为了在类型 String 上提供简约的 操作集

多次使用效率不高。

但它们有自己的权利作为类型操作 "xxx" + "yyy" 您不想使用 StringBuilder 指定。 (此外还有一个编译时连接。)

StringBuffer 恕我直言,这是一个错误。它比较新的 StringBuilder 更慢,因为它是同步的,但很少有人会从两个线程(无序)中添加一些东西。

String::concat 可能是对流减少等有用的方法参考。