Java 如何将BigDecimal重置为零

Java 如何将BigDecimal重置为零,java,bigdecimal,Java,Bigdecimal,你好, 我有一个BigDecimal临时变量,我希望它可以在函数中重用。如果该值大于零,是否有办法将该变量重置为零 谢谢! 您无法更改该值大小数是不可变的。您需要创建一个新实例。BigDecimal是不可变的,实例不能修改。但是,您可以执行以下操作: public void myMethod(BigDecimal b) { BigDecimal zero = BigDecimal.ZERO; if (b.compareTo(zero) > 0) b = ze

你好, 我有一个BigDecimal临时变量,我希望它可以在函数中重用。如果该值大于零,是否有办法将该变量重置为零


谢谢!

您无法更改该值<代码>大小数是不可变的。您需要创建一个新实例。

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

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

你可以通过阅读(第一个词是“不可变的”)很快就知道答案。Java最棒的地方之一是它的巨大和标准库。最好使用
BigDecimal.ZERO
而不是创建一个新库。@Stephen,没错,但我说的是“创建一个新库”,而不是在函数中重用一个。