Как сбросить BigDecimal на ноль - PullRequest
8 голосов
/ 26 февраля 2011

Привет, у меня есть временная переменная BigDecimal, я хочу, чтобы ее можно было повторно использовать в функции.Могу ли я сбросить эту переменную в ноль, если значение больше нуля?

THanks @!

Ответы [ 2 ]

9 голосов
/ 26 февраля 2011

BigDecimal является неизменным, и экземпляры не могут быть изменены. Тем не менее, вы можете сделать что-то вроде:

public void myMethod(BigDecimal b) {
    BigDecimal zero = BigDecimal.ZERO;
    if (b.compareTo(zero) > 0)
        b = zero;
    // Do stuff with b here
}
8 голосов
/ 26 февраля 2011

Вы не можете изменить значение. BigDecimals Неизменны. Вам нужно создать новый.

...