【发布时间】:2015-03-16 16:59:03
【问题描述】:
当我在第二个 for 循环中使用 subject.getSubjectHasProgram() 设置接口时,我得到了 NullPointerException。但是 subject.getSubjectHasProgram().size() 显示等于 2 这是我想要的真实..!!
Set<Subject> sub=(Set<Subject>)this.teacher.getSubjects();
for (Iterator<Subject> iterator = sub.iterator(); iterator.hasNext();) {
Subject next = (Subject)iterator.next();
if(next.getID()==this.ID){
this.Name=next.getName();
System.out.println("Subject Name="+this.Name);
this.CourseCode=next.getCourseCode();
this.CreditHour=next.getCreditHour();
**System.out.println("programscount="+next.getSubjectHasPrograms().size());**
for (Iterator iterator2 = next.getSubjectHasPrograms().iterator(); iterator2.hasNext();){
ProgramHasSubject programHasSubject = (ProgramHasSubject) iterator2.next();
this.selectedPrograms.add(programHasSubject.getProgram_ID());
System.out.println("Program ID : " + programHasSubject.getProgram_ID().getID());
System.out.println("Program Name : " + programHasSubject.getProgram_ID().getName());
System.out.println("Semester : " + programHasSubject.getSemester_ID());
}
break;
}
}
【问题讨论】:
-
检查
null是个好习惯,即使您认为它不可能发生。 -
是的,错误已解决,谢谢:)
标签: java error-handling exception-handling nullpointerexception