首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java面试 >

java 两个double门类的数相加 结果不正确

2012-12-14 
java 两个double类型的数相加结果不正确double aDouble1420133.89,bDouble12282.47double sumaDouble+

java 两个double类型的数相加 结果不正确
double aDouble=1420133.89,bDouble=12282.47;
double sum=aDouble+bDouble;
System.out.println(sum);

本来结果为:1432416.36  得到的结果为:1432416.3599999999

怎么才可以得到正确结果呢?
[解决办法]
Java中的简单浮点数类型float和double不能够进行运算
[解决办法]
不知道java支不支持BCD码数字或货币数字类型。
[解决办法]
这是计算机的问题 不是Java的问题

参考下这个吧:
http://blog.csdn.net/waitfor_/article/details/8035773
[解决办法]
嗯 我现在知道了 呵呵 可以用 bigdecimal
[解决办法]
如果是作为计算的中间值,而不是把这个结果显示在屏幕上,我看这个计算结果完全正确啊,1432416.3599999999和1432416.36就是一样的。

就算要显示在屏幕上,显示前总得保留若干位小数吧,那么显示出来还是1432416.36,就是正确的结果。


要相信基本类。
[解决办法]

引用:
如果是作为计算的中间值,而不是把这个结果显示在屏幕上,我看这个计算结果完全正确啊,1432416.3599999999和1432416.36就是一样的。

就算要显示在屏幕上,显示前总得保留若干位小数吧,那么显示出来还是1432416.36,就是正确的结果。


要相信基本类。



不是  我这个要要求 不可以四舍五入 是多少就得是多少 
[解决办法]
问题解决 谢谢各位 O(∩_∩)O~

热点排行