我有一个小问题,我似乎无法解决。
我想以'£100.50'格式打印我的余额,但它目前给我一个'£100.5'格式。
我正在使用decimalFormat方法,但它不起作用。任何帮助为什么?
final DecimalFormat df2 = new DecimalFormat("#.##");
balance = 100.499999;
System.out.println("Balance: £ " + df2.format(balance));
通过将(“#。##”)更改为(“#。00”)
来修复错误答案 0 :(得分:2)
这有效:new DecimalFormat("0.00");
<强>更新强>
要完全理解java.text.DecimalFormat
中使用的模式,请参阅Java API https://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html
答案 1 :(得分:1)
final DecimalFormat df2 = new DecimalFormat("#.00");
balance = 100.499999;
System.out.println("Balance: £ " + df2.format(balance));
这应该有效
从@ A2H&#39的回答我想做个记录。
假设你有
balance = .7538;
如果您希望它为0.75,请使用
new DecimalFormat("0.00");
或者如果你想成为.75则使用
new DecimalFormat("#.00");
答案 2 :(得分:0)
double value= 213.3456;
DecimalFormat df = new DecimalFormat("#.00");
System.out.println(df.format(value));