Java中double类型精度丢失的问题_double类型数据加减操作精度丢失解决方法_BigDecimal取整double类型数据加减操作精度丢失解决方法BigDecimal取整
BigDecimal在用double做入参的时候,二进制无法精确地表示十进制小数,编译器读到字符串"0.0000002"和“1.0000002”之后,必须把它转成8个字节的double值,也就是1.0000001999999998947288304407265968620777130126953125类似这种。所以,运行的时候,实际传给BigDecimal构造函数的真正的数值是1.000000199999999894728830440726596862077713012695