为了节省不必要的对象创建
这是一个非常糟糕的主意,它将使
== null检查和其他处理极端情况的代码变得乱七八糟(无论如何最终都会导致空指针异常)!
现在我想知道是否无法使用
Collections.emptyList()
不,不是。
emptyList()返回一个空列表。你 可以 做
if (list.equals(Collections.<Object>emptyList()))
但是,如果
list == null,它仍然会抛出NullPointerException ,所以它仍然不是您想要的。
我的建议:始终将列表初始化为
newArrayList<Object>,或者,例如,如果要从方法返回空列表,请
Collections.emptyList()改用。(这每次都会返回相同的实例,因此也不会在其中创建不必要的对象。)
然后使用
.isEmpty()来检查集合是否为空。



