我用java做了一个计算器,但做3.1-3=0.1000000000009.为什么?
答案:3 悬赏:40 手机版
解决时间 2021-04-05 18:24
- 提问者网友:疯子也有疯子的情调
- 2021-04-05 00:12
我用java做了一个计算器,但做3.1-3=0.1000000000009.为什么?
最佳答案
- 五星知识达人网友:归鹤鸣
- 2021-04-05 01:17
数字类型都改成BigDecimal就可以啦~不要用double或者float,这个在精确计算时就会出现你这样的问题
全部回答
- 1楼网友:何以畏孤独
- 2021-04-05 02:12
判断小数点后面的个数,再结果中取相应的位数
- 2楼网友:神也偏爱
- 2021-04-05 01:55
计算机表示浮点数是用二进制表示的,会有一些很小的误差,所以在显示的时候注意只取需要的精度就好了。追问那应该怎么设置精度?
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯