java - BigDecimal setScale 被忽略了吗?

标签 java bigdecimal

    setValue(BigDecimal value)
    {
      this.value=value;
      this.value.setScale(8, RoundingMode.HALF_DOWN);
    }

    BigDecimal getValue()
    {
       return value;
    }

   setValue(0.0314159*Math.random());

我不知道为什么,但是 getValue() 生成的 BigDecimals 的小数位数比 8 多很多。

我做错了什么?

最佳答案

如果您阅读 javadocs ,你会看到 setScale 返回一个新的 BigDecimal

关于java - BigDecimal setScale 被忽略了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26792222/

相关文章:

java - 为什么我的 Eclipse Java 包被视为文件夹?

java - (Java)使用对象wait()和notify()的线程安全

java - 如何评估 Java 中递归算法的效用?

java - 比较BigDecimal值和double值等于两位小数

java - BigInteger modPow 与 BigDecimal 指数

java - 如何转换 int 以返回字符串,这就是我们所说的 int

java - JFilechooser "Look In"下拉菜单未出现在框架 GlassPane 上

没有 E 的 Java BigDecimal

java - 使用汇率转换货币

java - BigDecimal.intValue() 返回意外数字