小编典典

在Java中使用String.format而不是字符串连接是更好的做法吗?

all

String.format在 Java 中使用和字符串连接之间有明显的区别吗?

我倾向于使用String.format但偶尔会滑倒并使用串联。我想知道一个是否比另一个更好。

我看到它的方式String.format让你在“格式化”字符串方面更有力量;并且串联意味着您不必担心不小心添加了额外的 %s 或遗漏了一个。

String.format也更短。

哪一个更具可读性取决于您的头脑是如何工作的。


阅读 64

收藏
2022-04-15

共1个答案

小编典典

我建议最好使用String.format().
主要原因是String.format()可以更轻松地使用从资源文件加载的文本进行本地化,而如果不为每种语言生成具有不同代码的新可执行文件,则无法本地化连接。

如果您计划将您的应用程序本地化,您还应该养成为格式标记指定参数位置的习惯:

"Hello %1$s the time is %2$t"

然后可以将其本地化并交换名称和时间标记,而无需重新编译可执行文件以说明不同的顺序。使用参数位置,您还可以重复使用相同的参数,而无需将其两次传递给函数:

String.format("Hello %1$s, your name is %1$s and the time is %2$t", name, time)
2022-04-15