在Java中使用String.format
和字符串连接有明显的区别吗?
我倾向于使用String.format
,但偶尔会滑动并使用串联.我在想是不是一个比另一个好.
在我看来,String.format
在"格式化"字符串方面给了你更多的力量;连接意味着您不必担心意外地添加了一个额外的%s或丢失了一个.
String.format
也更短.
哪一个更具可读性取决于你的头脑是如何工作的.
在Java中使用String.format
和字符串连接有明显的区别吗?
我倾向于使用String.format
,但偶尔会滑动并使用串联.我在想是不是一个比另一个好.
在我看来,String.format
在"格式化"字符串方面给了你更多的力量;连接意味着您不必担心意外地添加了一个额外的%s或丢失了一个.
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)