Encadenamiento de Java Mapa opcional y orElse (if-else-style)
¿Hay una manera elegante y de transmisión en Java para decir "asignar este Opcional a otro Opcional con un valor calculado si el valor existe, de lo contrario devolver un Opcional vacío"?
Pensé en algo como:
Optional<Float> amount = ...;
Optional<MonetaryAmount> myAmount = amount
.map(theAmount -> FastMoney.of(theAmount, "EUR")).orElse(Optional.empty());
Pero esto no es posible.
La solución que se me ocurrió es un tanto detallada y no similar a la transmisión:
Optional<Float> amount = ...;
Optional<MonetaryAmount> myAmount = amount.isPresent() ?
Optional.of(FastMoney.of(amount.get(), "EUR")) : Optional.empty();