我正在使用grails formatNumber,我想以十进制格式显示我的数字。
我想将10显示为10.00 或0为0.00,带有2位十进制数字。
怎么做?
答案 0 :(得分:9)
我相信您正在寻找如何使用Grails'formatNumber标记
执行此操作<g:formatNumber number="${10}" format="0.00"/>
<g:formatNumber number="${0}" format="0.00"/>
结果
10.00
0.00
formatNumber代码使用DecimalFormat作为format
参数
答案 1 :(得分:5)
Java 5?
String.format("%.2f", (double)value);
Java 4?
new BigDecimal(value).scale(2, RoundingMode.ROUND_HALF_UP).toString();
(从内存中,可能包含拼写错误)
答案 2 :(得分:3)
或使用NumberFormat
方式:
NumberFormat formatter = new DecimalFormat("0.00");
Assert.assertEquals("10.00", formatter.format(10));
Assert.assertEquals("0.00", formatter.format(0));
Assert.assertEquals("0.10", formatter.format(0.1));
与Junit断言。
查看documentation for DecimalFormat
,了解如何为构造函数创建格式化字符串。
答案 3 :(得分:0)
您应该使用grails docu
中描述的内容 <g:formatNumber number="${value}" minFractionDigits="2"/>