我们在写C#代码的时候常常会使用到string.Format("待格式化字符串{0},{1},....",参数1,参数2,...),来格式化字符串,特别是拼接字符的时候,这种方式使得代码更为直观清楚。
最近使用java时候却java的string.Format与c#重点string.Format用法不一样,java中的string.format更类似于C语言的sprintf()方法
例如:
String str=null;
str=String.format("Hello,%s", "world"); // 格式化字符串
但是如果我们这样写str=String.format("Hello,{0}", "world"); 输出结果却是:Hello,{0} 并不是我们想要的
最后发现java 中MessageFormat对象format方法可以实现c#中同样的效果
测试一下:
MessageFormat.format("name={0},salary={1}", "张三", "10000")
输出:name=张三,salary=10,000