我有一个从数据库查询优惠券列表的服务。该服务向客户端返回一个Optional
。
return listOfCoupons.isEmpty() ? Optional.empty() : Optional.of(listOfCoupons.get(listOfCoupons.size() - 1));
这段代码的客户端通过以下方式使用名为'coupons‘的Optional
:
if (coupons.isPresent) {
save (coupons.get());
}
这是Optional
的正确用法吗?
发布于 2020-05-28 21:58:02
从远处看,您对Optional<T>
应用程序接口的使用看起来很好,因为我没有看到任何误用。如果我吹毛求疵,提出一些建议,我会做出改变:
if (coupons.isPresent) {
save (coupons.get());
}
至:
coupons.ifPresent(c -> save(c)); //or method reference
但话又说回来,这真的要看味道了。
https://stackoverflow.com/questions/62073990
复制相似问题