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

时间:2020-03-09 15:17:08

标签: java string concatenation string-concatenation

我经历过有关字符串连接性能的不同主题。几乎答案都建议使用StringBuilderStringBuffer来降低开销成本(如果在循环外使用串联语句,则使用+运算符)。很明显,但是我仍然想知道Java为什么有String format()concat()方法,尽管它无效。此处的性能测试:link。有人提到字符串format()可能对Localization有用(我不太了解,但是我以后已经有一个要搜索的关键字了),但是剩下的目的是什么?它仅对向后兼容有用吗?

1 个答案:

答案 0 :(得分:2)

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

如果多次使用,效率会很低。

但是您不希望使用StringBuilder指定它们作为类型操作"xxx" + "yyy"的权利。 (此外,还有一个编译时级联。)

StringBuffer是恕我直言的错误。较新的StringBuilder同步时速度较慢,但​​是很少会在两个线程(无序)中添加一些东西。

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

相关问题