java判断list为空报错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java判断list为空报错相关的知识,希望对你有一定的参考价值。
public class Appointment extends DataEntity<Appointment> private String orgId; // 所属店ID private String orgName; // 所属店 private String customerId; // 会员ID private List<AppointmentItem> appointmentItem;//appointmentItem是从表。 //getset省略不贴在这 } 然后 在方法里拿 List<Appointment> selectAppointment =appointmentService.todayAppointment(appointment); List<AppointmentItem> selectItem = null; for(int i = 0;i < selectAppointment.size(); i ++) if(selectAppointment.get(i).getAppointmentItem()!=null&&!selectAppointment.get(i).getAppointmentItem().isEmpty()) selectItem.addAll(selectAppointment.get(i).getAppointmentItem()); 问题1:为什么在if判断会报错? 问题2:怎样把selectAppointment 所有 List<AppointmentItem>取出放到selectItem
参考技术A foreach时如果对象为空,会报空指针异常。另外,foreach一般都会用数组作为对象遍历,用list的很少见
java 判断list是否为空
问题:
之前用 list!=null 来判断list是否为空,但发现,定义一个list后,即使里面并没有加入任何元素,返回的结果仍旧是 true,
其实,本意是希望在没有任何元素时,返回 false,下面是关于判断逻辑的详细解析:
1、如果想判断list是否为空,可以这么判断:
if(list == null || list.size() ==0 )
//为空的情况
else
//不为空的情况
2、list.isEmpty() 和 list.size()==0 的区别
答案:没有区别 。isEmpty()判断有没有元素,而size()返回有几个元素, 如果判断一个集合有无元素 建议用isEmpty()方法.比较符合逻辑用法。
3、list!=null 跟 !list.isEmpty()有什么区别?
这就相当与,你要要到商店买东西
list!=null 首先判断是否有商店
!list.isEmpty() 没有判断商店是否存在,而是判断商店是否有东西
总结用法:如果连商店都没有,何来的的东西可卖
所以一般的判断是:
if(list!=null && !list.isEmpty())
//不为空的情况
else
//为空的情况
以上是关于java判断list为空报错的主要内容,如果未能解决你的问题,请参考以下文章