日期:2014-05-20  浏览次数:20899 次

如何处理java的Math.pow()计算的误差
Java中12*Math.pow(10, -1)的计算结果是1.2000000000000002,怎样让幂计算得出正确的结果,项目中有大量类似的幂计算。
java Math.pow() 计算精度 误差

------解决方案--------------------
Math.pow(10, -1)返回的结果是一个幂级数,底数是10,指数是-1
12是一个整数,可以认为底数是12,指数是1

两者底数不一样,结果肯定是你那样的了,你可以把12转换为底数是10的数,再运行,结果应该是正确的。