【发布时间】:2018-02-06 09:33:04
【问题描述】:
我的源代码是:
public static double roundDown(double d) {
double value = Math.floor(d * 1e2) / 1e2;
if(Double.toString(value).contains("."))
return value;
else
return Double.parseDouble(Double.toString(value)+".00");
}
当我通过37187.200000 时,输出会出现37187.19,我想要它37187.20
【问题讨论】:
-
这个错误是由digital aproximation en.wikipedia.org/wiki/Fixed-point_arithmetic引起的