【发布时间】:2018-09-07 00:21:34
【问题描述】:
当我使用声纳 lint 扫描代码时,以下代码将错误显示为“必须使用“orElseThrow”的返回值”
itemList.stream()
.filter(item -> orderItemId.equals(item.getId()))
.findAny()
.orElseThrow(() -> new BadRequestException("12345","Item Not Found"));
这只是为了验证目的,不需要从这个语句中返回任何东西。需要验证该项目是否存在。
仅供参考:Eclipse 将快速修复显示为 squid:S2201
有人知道如何解决这个错误吗?
【问题讨论】:
-
感谢@Aominè 的解决方案。
if(itemList.stream().noneMatch(i->orderItemId.equals(i.getId()))){ throw new BadRequestException("12345","Item Not Found"); }