Мне было просто интересно, когда нам нужно выбрать опциональный чек вместо if else
или вложенный null
. скажем, например, есть ли какое-либо преимущество друг друга ниже или вы считаете, что Дополнительный может быть излишним
String.valueOf(Optional.ofNullable(itemKey).map(ItemKey::getId).orElse(null));
против
String.valueOf(itemKey == null ? null : itemKey.getId());
Я всегда хотел использовать Optional.of
или Optional.ofNullable
когда мне нужно было выбрать вложенный элемент данного объекта, как показано ниже,
private String formatCurrency(String symbol, BigDecimal value) {
return Optional.ofNullable(value)
.map(BigDecimal::doubleValue)
.map(Object::toString)
.map(val -> symbol + val.replaceAll(REGEX_REMOVE_TRAILING_ZEROS, "$2"))
.orElse("");
}
Могу ли я узнать, где в коде Optional абсолютно не нужен.