java中判断list是否为空
1.判断list是否为空
如果想判断list是否为空,可以这样判断:
//方法1
if (list != null && !list.isEmpty()) {
//list不为空
} else {
//list为空
}
//方法2
if (list == null || list.size() == 0) {
//list为空
} else {
//list不为空
}
list!=null:判断是否存在list,null表示这个list不指向任何的东西,如果这时候你调用它的方法,那么就会出现空指针异常。
list.isEmpty():判断list里是否有元素存在
list.size():判断list里有几个元素
所以判断list里有元素的最佳的方法是:
if(list != null && !list.isEmpty()){
//list存在且里面有元素
}
2.原理分析
list!=null和list.size()>0的区别:
(1)list==null,意味着list压根没有地址,在堆内就不存在。
(2)list.size()==0 意思堆内有list但是还没来得及放元素,其长度随着元素数量变化而变化,暂时为零。
(3)list如果为null的话,说明没有进行初始化。这时list调用任何的方法都会抛出空异常。list.size()==0说明list已经被new过,但是里面没有值。
(4)区别:
①瓶子存在 list != null
②瓶子里没有水 list.isEmpty()
判断的时候一定要注意先后顺序。如果没有瓶子都没有,直接判断有没有水,是会报java.lang.NullPointerException的
③另外:
list.add(null)会造成list.isEmpty() 为 false, list.size() 为1,所以代码里要避免list.add(null)的陷阱。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)