我有可选对象:

Optional<Detail> newestDetail;

我想返回newestDetail.getId(),或者如果newestDetail为null,则返回null

我们是否有比以下方法更复杂的方法?
return newestDetail.isPresent()?newestDetail.get().getId():null;

最佳答案

将值映射到带有id字段的Optional,然后将其转换为null值(如果为空):

return newestDetail.map(Detail::getId).orElse(null);

07-24 09:15