Интерактивно изменить выбор selectInput

У этого сообщения уже есть проверенный ответ, но ответ не фильтрует для нулевых значений. Правильный ответ должен предотвращать пустые значения, используя функцию Object :: nonNull как предикат.

BigDecimal result = invoiceList.stream()
    .map(Invoice::total)
    .filter(Objects::nonNull)
    .filter(i -> (i.getUnit_price() != null) && (i.getQuantity != null))
    .reduce(BigDecimal.ZERO, BigDecimal::add);

Это предотвращает попытку суммирования нулевых значений по мере уменьшения.

30
задан zx8754 17 June 2015 в 15:45
поделиться