喂, 我有一个BigDecimal临时变量,我希望它可以在函数中重用。如果值大于零,我有办法将此变量重置为零吗?
谢谢@!
答案 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
是永恒的。你需要创建一个新的。