为什么会执行else里面的语句?
public void testSelectCourse(){ //用于存放键盘输入信息 String courseId; stu = new Student("1","小明"); System.out.println("欢迎" + stu.name + "同学选课!"); for(int i = 0; i < 3; i++){ System.out.println("请输入课程ID"); courseId = sc.next(); for (Course cr : coursesToSelect) { if(cr.id.equals(courseId)){ /** * 在Set中多次添加同一对象时,最终只会保留一个该对象(的引用),且保留的是第一次添加的那一个 */ //stu.courses.add(cr); stu.courses.add(cr); //在Set中允许添加null对象 //stu.courses.add(null); }else{ System.out.println("输入信息错误,请重新选择!"); testSelectCourse(); } } } }