java 的Optional使用存在问题

代码逻辑有问题 :
// 或者使用orElse()提供默认值
takeawayGoods.setPicture(dto.getPhotos().orElse(Collections.emptyList()).stream()
.filter(f->f.getIsMaster()==1)
.findFirst()
.orElse(new Photo()).getUrl());
正确写法应该是这样:
takeawayGoods.setPicture(Optional.ofNullable(dto.getPhotos()).orElse(Collections.emptyList()).stream()
.filter(f->f.getIsMaster()==1)
.findFirst()
.orElse(new EbGoodsInfoDTO.Photo()).getUrl());
展开
后端马农于2024-10-09 07:58发布的图片
评论