java程序中,我们在判断列表是否为空的时候,往往要这样写
if (attackIpList != null && attackIpList.size() > 0){
//todo
}
为什么既要判断list不为null,又要判断size>0呢,岂不是多此一举吗?
1、如果直接判断size>0,如果list == null,那程序报空指针的错
2、List list=new ArrayList();
这样的list不为null,但是size=0,这样的集合对于之后的判断是没用的,甚至是报异常,如list.get(0.....n)这样的取值判断,就会报异常
但是 当list 初始化后 list != null但list内依然没有数据
所以要判断两个条件