Reputation: 190
I am trying to write a code to check a if condition for element.get() in arraylist if it is null or not How can I access it without throwing an error here is my code
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());
}
Upvotes: 0
Views: 200
Reputation: 29
One better way of doing this check (from Java 8 onwards) is to use Optional
Optional<Employee> optEmployee = Optional.ofNullable(employeeSalaryPaymentlist.get(j));
if( optEmployee.isPresent() )
{
Employee fromEmployee = optEmployee.get();
//rest of the code
}
Upvotes: 0
Reputation: 51892
I would rewrite the code like this to make it clearer and safer by adding a check on both objects.
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());
}
Of course if employee.getFromEmployeeBean
might return null as well you need a similar if
again.
Upvotes: 2