格式优于串联的优点

时间:2013-02-20 10:52:23

标签: java concatenation string-formatting

我正在使用Java,我想知道使用格式而不是简单连接是否有任何优势。

我要么像这样格式化: a = String.format("%s/hi", b);

或者像这样: a = (b + "/hi");

使用一个优于另一个优势(清洁度除外)吗?

3 个答案:

答案 0 :(得分:2)

最好使用String.format而不是String.concat

String.format()不仅仅是连接字符串。例如,您可以使用String.format()显示数字是特定区域设置。

但是,如果你不关心本地化,功能上没有区别。也许一个比另一个快,但在大多数情况下它可以忽略不计。

答案 1 :(得分:1)

在以下行中只会创建一个字符串

a = String.format("%s/hi", b);

在以下行中创建了多个字符串

a = (b + "/hi");

答案 2 :(得分:1)

如果需要,格式可以处理非常复杂的模式和格式。对于除了大循环中使用的代码之外的任何其他内容,我个人会考虑任何感知的“性能”优势。谁在乎你的方法是否会产生一些很快就会收集垃圾的对象?