我們在寫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