为什么java将整数转化为更少的东西
这个问题在这里已经有了答案:
你正在使用double进行计算。
请看看这个http://floating-point-gui.de/
另外http://www.mkyong.com/java/how-do-calculate-monetary-values-in-java-double-vs-bigdecimal/
我承认,我没有阅读你的代码,但我99%确定你在使用二进制数据存储时遇到问题。
你看,在十进制系统中,1/10可以很容易地表示为0.1。 但是,尝试1/3,它变成0.33333333333333333 ...
在二进制中,1/10是0.0001100110011001100110011 ...
看看BigDecimal的base10 numberstorage。
链接地址: http://www.djcxy.com/p/85815.html