【发布时间】:2016-11-21 10:39:31
【问题描述】:
我正在尝试四舍五入到小数点后一位。下面是代码sn-p。
DecimalFormat decimalFormat = new DecimalFormat("#0.#");
String formattedNumber = decimalFormat.format(4.65d);
System.out.println(formattedNumber);
输出
4.7
根据 DecimalFormat javadoc,其默认舍入为 HALF_EVEN。根据这条规则,4.65 应该四舍五入到 4.6。但是,它的输出为 4.7。请帮助我理解这种行为。
【问题讨论】:
-
@ChiragParmar 这不是重复的。另一个问题是关于理解 HALF_EVEN 的基本知识,这不是这个问题的目的。相反,我们正在讨论在上述情况下舍入时显示的意外行为的原因,而您提供的其他问题没有回答。
标签: java decimalformat