p3c 客户端代码对方法返回的 Collection 要进行非空判断

cyej8jka  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(22)

Rule content

Collections 类返回的对象,如:emptyList() / singletonList() 等都是 immutable list,不可
对其进行添加或者删除元素的操作

Problem description

我觉得客户端在使用方法放回的 List 或者 Set 之前必须进行非空判断,不能直接用返回的 Collection 对象调用方法。因为你不能要求第三方的代码或者同组中其他同事写的代码不会返回 null。

Advice

pb3s4cty

pb3s4cty1#

是可以这么要求非空的,这可以成为一个约定,
我们实践过程中,使用了 jsr-305 的 @Nullable@Nonnull@NonNullApi 等注解来做空值声明,
效果很好,很多主流框架也都履行了响应的规范, IDEA 对此支持也已经很到位了

相关问题