我的github

问题很简单,是由于我们输入的十进制的 double 类型的数据在进行计算的时候,计算机会先将其转换为二进制数据,然后再进行相关的运算。 然而在十进制转二进制的过程中,有些十进制数是无法使用一个有限的二进制数来表达的,换言之就是转换的时候出现了精度的丢失问题,所以导致最后在运算的过程中,自然就出现了我们看到的一幕。 

Java 语言中最经典的便是使用 BigDecimal 来解决。

参考:https://www.jianshu.com/p/353834bbe7da

BigDecimal:https://baike.baidu.com/item/BigDecimal/5131707?fr=aladdin

posted on 2022-08-17 11:53  XiaoNiuFeiTian  阅读(183)  评论(0编辑  收藏  举报