ked*_*the 60 java string-formatting messageformat
MessageFormat.format
和String.format
JDK 1.5有什么区别?
Ada*_*yga 76
简而言之,主要区别在于格式字符串:
MessageFormat.format()
format string接受参数位置(例如{0}
,{1}
).例:
"This is year {0}!"
开发人员不必担心参数类型,因为它们通常根据当前的情况进行识别和格式化Locale
.
String.format()
format string接受参数类型说明符(例如,%d
对于数字,%s
对于字符串).例:
"This is year %d!"
String.format()
由于您可以使用类型说明符指定许多选项,因此通常可以更好地控制参数的显示方式.例如,format string "%-6.2f"
指定显示带有min的左对齐浮点数.宽度为6个字符,精度为2位小数.
只需查看两种方法的javadoc即可了解更多详细信息.
lba*_*scs 21
String.format只是Formatter的快捷方式,这是一个"printf风格"的格式化程序.另一方面,MessageFormat使用不同的格式约定,如链接文档中所述.
使用第一个"用于布局对齐和对齐,数字,字符串和日期/时间数据的常用格式,以及特定于语言环境的输出",第二个用"以语言中立的方式生成连接的消息".
归档时间: |
|
查看次数: |
29058 次 |
最近记录: |