如何在 Java 8 中使用 Optionals 编写代码
我有一个这样的代码。怎样才能更正确地改写它?
Optional<String> getNameBySiiPriorityInfo(Optional<SiiPriorityInfo> siiPriorityInfo){
return siiPriorityInfo.isPresent() ? Optional.ofNullable(siiPriorityInfo.get().getName()) : Optional.empty();
}
回答
如果您有一个可选项,并且希望通过对可选项中的对象执行操作来获得另一个可选项,请使用map.
return siiPriorityInfo.map(SiiPriorityInfo::getName);