小数点后仅显示2位数

时间:2015-07-14 14:21:12

标签: java

bill[p][l][0] = new DecimalFormat("##.##").format(Double.parseDouble(i2[m][0]));

上面输入的代码不起作用;输入10.010作为输出。

3 个答案:

答案 0 :(得分:5)

它正在工作 - #表示仅在相关时打印数字(请参阅documentation)。尝试使用

bill[p][l][0] = new DecimalFormat("##.00").format(Double.parseDouble(i2[m][0]));

答案 1 :(得分:3)

要准确格式化最多两个小数位,您应使用##.00,因为##.##将从值中删除尾随零。

答案 2 :(得分:0)

如果你想同时处理正数和负数,我建议使用Double,因为new BigDecimal(i2[m][0]).setScale(2, BigDecimal.ROUND_FLOOR) 技术上没有任何十进制值要截断。尝试这样的事情:

.png