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,就是正确的结果。
要相信基本类。
[解决办法]