String.format在 Java 中使用和字符串连接之间有明显的区别吗?
String.format
我倾向于使用String.format但偶尔会滑倒并使用串联。我想知道一个是否比另一个更好。
我看到它的方式String.format让你在“格式化”字符串方面更有力量;并且串联意味着您不必担心不小心添加了额外的 %s 或遗漏了一个。
String.format也更短。
哪一个更具可读性取决于您的头脑是如何工作的。
我建议最好使用String.format(). 主要原因是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)