如何判断java中列表中的元素.get()是否为null?
我试图编写一个代码来检查arraylist中的element.get()的if条件是否为null 如何访问它而不抛出错误 这是我的密码如何判断java中列表中的元素.get()是否为null?,java,spring,list,arraylist,collections,Java,Spring,List,Arraylist,Collections,我试图编写一个代码来检查arraylist中的element.get()的if条件是否为null 如何访问它而不抛出错误 这是我的密码 if(EmployeeSalaryPaymentlist.get(j)!=null) { EmployeeSalaryPaymentlist.get(j).getFromEmployeeBean().setFirst(fromEmployeeSalaryPaymentList.get(j).getFromEmployeeBean().getFirst()
if(EmployeeSalaryPaymentlist.get(j)!=null) {
EmployeeSalaryPaymentlist.get(j).getFromEmployeeBean().setFirst(fromEmployeeSalaryPaymentList.get(j).getFromEmployeeBean().getFirst());
EmployeeSalaryPaymentlist.get(j).getFromEmployeeBean().setLast(fromEmployeeSalaryPaymentList.get(j).getFromEmployeeBean().getLast());
EmployeeSalaryPaymentlist.get(j).getFromEmployeeBean().setEmployeeId(fromEmployeeSalaryPaymentList.get(j).getFromEmployeeBean().getEmployeeId());
}
我会像这样重写代码,通过在两个对象上都添加一个检查,使代码更清晰、更安全
final Employee employee = EmployeeSalaryPaymentlist.get(j);
final Employee employeeFrom = fromEmployeeSalaryPaymentlist.get(j);
if(employee != null && employeeFrom != null) {
final EmployeeBean to = employee.getFromEmployeeBean();
final EmployeeBean from = employeeFrom.getFromEmployeeBean()
to.setFirst(from.getFirst());
to.setLast(from.getLast());
to.setEmployeeId(from.getEmployeeId());
}
当然,如果
employee.getFromEmployeeBean
也可能返回null,您需要一个类似的if
。我会像这样重写代码,通过在两个对象上都添加一个检查,使代码更清晰、更安全
final Employee employee = EmployeeSalaryPaymentlist.get(j);
final Employee employeeFrom = fromEmployeeSalaryPaymentlist.get(j);
if(employee != null && employeeFrom != null) {
final EmployeeBean to = employee.getFromEmployeeBean();
final EmployeeBean from = employeeFrom.getFromEmployeeBean()
to.setFirst(from.getFirst());
to.setLast(from.getLast());
to.setEmployeeId(from.getEmployeeId());
}
当然,如果
employee.getFromEmployeeBean
也可能返回null,那么您需要再次使用类似的if
。执行此检查的一种更好的方法(从Java 8开始)是使用
Optional optEmployee=Optional.ofNullable(employeeSalaryPaymentlist.get(j));
if(optEmployee.isPresent())
{
Employee fromEmployee=optEmployee.get();
//代码的其余部分
}
执行此检查的一种更好的方法(从Java8开始)是使用
Optional optEmployee=Optional.ofNullable(employeeSalaryPaymentlist.get(j));
if(optEmployee.isPresent())
{
Employee fromEmployee=optEmployee.get();
//代码的其余部分
}