为什么3*0.03==0.09为true,而3*0.1==0.3却为false呢?

为什么3*0.03==0.09为true,而3*0.1==0.3却为false呢?

https://img1.sycdn.imooc.com//climg/62ac75440955e5be14690627.jpg

为什么3*0.03==0.09为true,而3*0.1==0.3却为false呢?这两个式子不是类似的吗?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小蓝 2022-06-18 09:56:58

同学你好,这里是因为结果中包含浮点数导致的,浮点数在表达式的运算中会有精度问题。

同学可以用打印语句分别对两次计算的结果进行打印,就会看出结果的不同。

如果同学对浮点数精度有兴趣,可以查询一下“Java 浮点数”关键词,会有详细的介绍。

祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师