使用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

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

posted on 2017-12-22 11:21  偶尔发呆  阅读(2339)  评论(0编辑  收藏  举报