Java中2-1.1等于几?答案让人大吃一惊

本文揭示了Java中使用float和double进行浮点数运算时的精度问题,介绍了为何电商平台应避免直接使用这些类型进行金额计算。通过对比不同数据类型的运算结果,强调了BigDecimal在处理高精度计算时的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大家都知道2-1.1=0.9
那么我们在Java里面计算下吧
如图:
在这里插入图片描述
嗯?怎么回事?是不是我们没有加数据类型?让我们加上double数据类型试下吧~
在这里插入图片描述
纳尼?怎么还是这样子?在这里插入图片描述
再试下float
在这里插入图片描述
这样子就对了嘛?电商平台的计算都是杜绝使用这种方法的,因为由于这种计算导致金额出现的误差,所带来的损失是无法估量的。所以我们要找到一种正确的计算方法。
Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。我们快来试下吧~
在这里插入图片描述
嗯~
这样子就对了嘛~
你get到了吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值