【发布时间】:2016-05-16 15:10:21
【问题描述】:
我想在屏幕上打印带 2 个小数点的双精度值。到目前为止,这条线运行良好:
System.out.println(new DecimalFormat("$#,###.##").format(value));
对于像这样的输入:
double value = 82348238482834.23482348;
打印出来:
$82,348,238,482,834.23
这正是我想要的。但是,如果我有输入 0,我希望它打印出 $0.00。使用上面的格式行,它会打印出$0。我尝试将上面的代码更改为:
double value = 0;
System.out.println(new DecimalFormat("$#,###.00").format(value));
但是打印出来的是$.00。我可以这样做:
if(value == 0) {
System.out.println("$0.00");
}
它有效,但它非常难看。有没有其他方法可以解决这个问题?
【问题讨论】:
-
嗯,是的,
0always 打印,#仅 有条件地 打印...所以你认为你想要在点?
标签: java double decimal decimalformat