首页 > 解决方案 > 如何在 java 8 中使用 Optionals 编写代码

问题描述

我有这样的代码。如何更正确地重写它?

Optional<String> getNameBySiiPriorityInfo(Optional<SiiPriorityInfo> siiPriorityInfo){
    return siiPriorityInfo.isPresent() ? Optional.ofNullable(siiPriorityInfo.get().getName()) : Optional.empty();
}

标签: javaoptional

解决方案


如果您有一个可选项,并且希望通过对可选项内部的对象执行操作来获得另一个可选项,请使用map.

return siiPriorityInfo.map(SiiPriorityInfo::getName);

推荐阅读