如何将BigDecimal重置为零

时间:2011-02-26 04:01:33

标签: java bigdecimal

喂, 我有一个BigDecimal临时变量,我希望它可以在函数中重用。如果值大于零,我有办法将此变量重置为零吗?

谢谢@!

2 个答案:

答案 0 :(得分:9)

BigDecimal是不可变的,并且无法修改实例。但是,您可以执行以下操作:

public void myMethod(BigDecimal b) {
    BigDecimal zero = BigDecimal.ZERO;
    if (b.compareTo(zero) > 0)
        b = zero;
    // Do stuff with b here
}

答案 1 :(得分:8)

您无法更改该值。 BigDecimals是永恒的。你需要创建一个新的。