可能重复:
将小数位移动到双精度
我在Java中遇到了这个奇怪的问题,我有以下代码:
double velocity = -0.07;
System.out.println("raw value " + velocity*200 );
System.out.println("floored value " + Math.floor(velocity*200) );
我有以下输出:
raw value -14.000000000000002
floored value -15.0
那些 0002 搞砸了一切,顺便说一句,不应该有那个 traling 2,我认为它应该在小数点后全为零,我可以摆脱那个 2 吗?
更新:感谢您的帮助,伙计们,您知道有什么方法可以在 BigDecimal 对象上进行四舍五入而不调用 doubleValue 方法吗?