Java:List判空的条件:List=null 和 List.size = 0

当需要对一个LIst进行判空操作时我们可使用如下两个语句:

if (list == null || list.size() == 0) {}

if (list != null && list.size() != 0) {}

可能会有人疑问如果满足  list == null  ,那么这个list不就为空了吗?为什么还要再使用另一个条件 list.size == 0 呢?

首先我们需要先弄懂这两个判断条件分别代表什么含义:

1.   list == null  :用于判断list有没有初始化,也就是list是否被赋为null,如 List list = null; ,满足该条件的话list中是没有数据的

2.  list.size == 0 :用于判断list中是否有数据,满足该条件时list中也是没有数据的

如果只使用 list == null :一旦list进行了初始化 List list2 = new ArrayList(); ,此时list就不再为null了,但list内并没有数据。如果只使用 list == null 来判断是否为空的话,就会判断错误。

如果只使用 list .size == 0 :如果list并没有进行初始化,使用该条件时会报空指针错误,就无法达到判空的目的。因此在使用该条件时,一定要判断list是否进行了初始化


总结:

在对List进行判空时,需要使用两个条件:先使用 list == null判断list是否初始化后,再使用 list .size == 0判断是否为空。

参考链接:https://www.cnblogs.com/huiAlex/p/8594270.html

猜你喜欢

转载自www.cnblogs.com/wmxblog/p/10972211.html