<分区>
Possible Duplicate:
Java floats and doubles, how to avoid that 0.0 + 0.1 + … + 0.1 == 0.9000001?
如何克服 java android 中双倍乘法的精度问题?请注意,我正在将字符串值转换为 double 值。
例如:当我将两个 double 值相乘时:
double d1 = Double.valueOf("0.3").doubleValue() * Double.valueOf("3").doubleValue();
System.out.println("Result of multiplication : "+d1);
我得到以下结果:0.899999999999999
我得到的一些结果是。
0.6*3=1.7999999999999998;
0.2*0.2=0.04000000000000001;
etc.
我想得到以下结果而不是上面的结果。
0.3*3=0.9;
0.6*3=1.8;
0.2*0.2=0.04;
请记住,我并不是要将它四舍五入到最接近的整数。