Jac*_*ack 3 java double sum floating-accuracy decimalformat
可能重复:
在double中移动小数位
为什么以下数字总和不等于0.4622?但0.46219999999999994
Double total = new Double(0.08) + new Double(0.0491) + new Double(0.3218) +
new Double(0.0113) + new Double(0.0); // = 0.46219999999999994
Run Code Online (Sandbox Code Playgroud)
我有一个检查用户输入的应用程序.
用户输入5个十进制数和一个总数.应用程序检查komma后面4位小数的所有5个数字的总和是否等于总数.
限制它给了我0.4621不等于0.4622.我不能使用DecimalFormat,因为它将它向上舍入.如果我明确地说,向下舍入,那么这种情况就会失败.
关于如何解决这个问题的任何建议?
| 归档时间: |
|
| 查看次数: |
20222 次 |
| 最近记录: |