问题描述
Java中12*Math.pow(10, -1)的计算结果是1.2000000000000002,怎样让幂计算得出正确的结果,项目中有大量类似的幂计算。
解决方案
精确运算需要使用BigDecimal
解决方案二:
再精确的计算都需要一个精度的表示范围。如果对精度要求较高,表示范围较大, 用BigDecimal。
解决方案三:
用BigDecimal进行运算.
解决方案四:
我建议控制精度,即定义各子系统支持的最大精度,在运算时,只保留到精度即可。当然,如果你的精度要求很高,请转换成整数计算,通过单位换算来标记数值真正的含义。
时间: 2024-09-17 04:33:46