首页 新闻 会员 周边 捐助

为什么是false (java浮点型的计算!)

0
悬赏园豆:10 [已解决问题] 解决于 2013-05-05 20:58
System.out.println(Double.valueOf("123.444")+0.001==123.445);
SeeMore的主页 SeeMore | 菜鸟二级 | 园豆:313
提问于:2013-05-04 15:25
< >
分享
最佳答案
0

浮点型,不能进行精确的比较,c#中的decimal类型可以对浮点数,进行精确的比较,不知道java中有没有,但是你的double型肯定不可以。

收获园豆:10
chenping2008 | 大侠五级 |园豆:9836 | 2013-05-05 12:42

这个说法我表示可以接受!

SeeMore | 园豆:313 (菜鸟二级) | 2013-05-05 20:58
其他回答(2)
0

问题应该在 

Double.valueOf("123.444")

返回的结果上
Yu | 园豆:12990 (专家六级) | 2013-05-04 16:24

大哥是123.444你当我没测试过啊,

支持(0) 反对(0) SeeMore | 园豆:313 (菜鸟二级) | 2013-05-05 20:56
0
System.out.println(Double.valueOf("123.444")); 输出看一下结果
@@@一统@@@ | 园豆:1551 (小虾三级) | 2013-05-04 19:20

大哥是123.444你当我没测试过啊,

支持(0) 反对(0) SeeMore | 园豆:313 (菜鸟二级) | 2013-05-05 20:56
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册