Использование ==
для проверки BigDecimal
- плохая идея.
Даже если предположить, что checkIfNull
возвращает Decimal.ZERO
, когда null
, у вас все еще есть проблема, с которой rechnung1.netto
может столкнутьсябыл ноль, равный !=
Decimal.ZERO
.
Кроме того, equals
имеет проблему, состоящую в том, что и значение, и шкала должны быть равны, чтобы два BigDecimal
значения считались равными.
Это безопасный способ проверить (ненулевое) BigDecimal
значение на ноль:
BigDecimal x = ...
if (x.compareTo(BigDecimal.ZERO) == 0) {
// it is zero
} else {
// it is not zero
}