判断list集合是否为空有两种常用方式:
第一种:
//判断list是否为空,且list集合中包含的元素个数小于等于0个
if(list == null && list.size() == 0){ // 为空的情况 } else {// 不为空的情况}
第二种:
首先需要明白list.isEmpty() 和 list.size()==0 是等价的。还有需要明白list !=null 跟 ! list.isEmpty()即list.size() == 0有什么区别 ?
举个例子就是:相当与,你要喝水,
前面就是判断是不是连水杯都没有,
后面就是判断水杯里面没有水,
连盛水的东西都没有,
这个水从何而来?
所以一般的判断是
if(list != null && !list.isEmpty()){
这个里面取list中的值
}else{
做其他处理
}
list != null先这样可以避免空指针异常
第三种,使用CollectionUtils.isNotEmpty(Collection coll)CollectionUtils工具类
实现原理是:
第一步:调用CollectionUtils.isNotEmpty(Collection coll)方法
第二步:isNotEmpty方法如下
public static boolean isNotEmpty(Collection coll) {
return !CollectionUtils.isEmpty(coll); // 调用CollectionUtils.isEmpty(coll)方法
}
第三步:isEmpty(coll)方法如下
public static boolean isEmpty(Collection coll) {
return (coll == null || coll.isEmpty());
}
总的来说,底层原理就是判断list == null || list.size() == 0(list.isEmpty())相反就是list != null && list.size() > 0 (list.isNotEmpty())