创建双精度数时,值0.3不能精确表示。您可以从不带中间双精度字的字符串创建BigDecimal,如下所示:
new BigDecimal("0.3")浮点数表示为二进制分数和指数。因此,有些数字无法准确表示。在以10为基数的数字中有一个类似的问题,例如1/3,即0.333333333 .....
1/3的任何十进制表示形式都不精确。这发生在二进制不同的分数集上,而0.3是二进制不精确的分数集之一。

创建双精度数时,值0.3不能精确表示。您可以从不带中间双精度字的字符串创建BigDecimal,如下所示:
new BigDecimal("0.3")浮点数表示为二进制分数和指数。因此,有些数字无法准确表示。在以10为基数的数字中有一个类似的问题,例如1/3,即0.333333333 .....
1/3的任何十进制表示形式都不精确。这发生在二进制不同的分数集上,而0.3是二进制不精确的分数集之一。