Was ist die eleganteste Möglichkeit, zwei optionale <BigDecimal> -Zahlen hinzuzufügen?
Ich muss eine Additionsoperation für zwei große Dezimalstellen ausführen, bei denen es sich um um umbrochene Optionszeichen handelt:
Optional<BigDecimal> ordersTotal;
Optional<BigDecimal> newOrder;
Ich möchte ordersTotal + = newOrder erreichen. Es ist wichtig zu beachten, dass, wenn beide Werte leer sind, das Ergebnis ebenfalls leer sein sollte (dh nicht Null).
Hier ist, was ich mir ausgedacht habe:
ordersTotal = ordersTotal.flatMap( b -> Optional.of(b.add(newOrder.orElse(BigDecimal.ZERO))));
aber ich frage mich, ob es eine elegantere Lösung gibt.