MessageFormat格式化数字

时间:2023-03-09 16:07:41
MessageFormat格式化数字

使用MessageFormat格式化数字,有一个很隐蔽的技巧点:

public static void main(String[] args) {
MessageFormat mf = new MessageFormat("{0,number,#.##},{0,number,#.#}");
Object[] objs = {new Double(3.1415)};
String result = mf.format(objs);
// result now equals "3.14,3.1"
System.out.println(result);
}

程序输出:3.14,3.1

上述代码修改一处:

//#.##前后加2个空格
MessageFormat mf = new MessageFormat("{0,number, #.## },{0,number,#.#}");

程序输出:  3.14  ,3.1

"#.##"字符串的格式,会影响格式化的结果。