获取学生id之后用 boolean 判断学生id是否在数组中出错,求解
for(int i =0;i<students.length;i++) {
if(students[i].getId().equals(student.getId())) {
return false;
}
}
return true;
}
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.NullPointerException
找到 student id 如果 存在的返回 false 如果不存在 返回 true
NullPointerException
空指针异常表示使用 null 值调用了方法,你可以看下日志确认具体的错误位置,推测为 students[i]
或者 student
的值为 null,如果确实可能为 null,可以在比较之前加一个判断。
NullPointerException是因为第2行代码中students[i].getId(),这个产生的ID可能为null,然后null去调用了.equals方法导致报错
解决办法:
如果你保证student.getId()获取到的ID不为null,可以将.equals前后颠倒