這個是Course類:
package?StudentCourseSystem;
import?java.util.HashSet;
import?java.util.Set;
public?class?Course?{
public?String?id;
public?String?name;
public?Set<Course>?courses;
public?Course(String?id,?String?name)?{
this.id?=?id;
this.name?=?name;
this.courses?=?new?HashSet<Course>();
}
/*
?*?public?Course()?{
?*?
?*?}
?*/
}
這個是Student類:
package?StudentCourseSystem;
import?java.util.HashSet;
import?java.util.Set;
public?class?Student?{
public?String?id;
public?String?name;
public?Set<Course>?courses;
public?Student(String?id,?String?name)?{
this.id?=?id;
this.name?=?name;
courses?=?new?HashSet<Course>();
}
}
這個是SetTest類:
package?StudentCourseSystem;
import?java.util.ArrayList;
import?java.util.Arrays;
import?java.util.List;
import?java.util.Scanner;
public?class?SetTest?{
public?List<Course>?coursesToSelect;
public?SetTest()?{
coursesToSelect?=?new?ArrayList<Course>();
}
public?void?testAdd()?{
Course?cr1?=?new?Course("1",?"數(shù)據(jù)結(jié)構(gòu)");
coursesToSelect.add(cr1);
Course?temp?=?(Course)?coursesToSelect.get(0);
Course?cr2?=?new?Course("2",?"JAVA入門");
coursesToSelect.add(0,?cr2);
Course?temp2?=?(Course)?coursesToSelect.get(0);
Course?cr3?=?new?Course("3",?"JSP");
coursesToSelect.add(cr3);
Course?temp3?=?(Course)?coursesToSelect.get(2);
Course[]?course?=?{?new?Course("4",?"離散數(shù)學"),?new?Course("5",?"HTML")?};
coursesToSelect.addAll(Arrays.asList(course));
Course?temp4?=?(Course)?coursesToSelect.get(3);
Course?temp5?=?(Course)?coursesToSelect.get(4);
Course[]?course2?=?{?new?Course("5",?"高等數(shù)學"),?new?Course("6",?"大學物理")?};
coursesToSelect.addAll(5,?Arrays.asList(course2));
Course?temp6?=?(Course)?coursesToSelect.get(5);
Course?temp7?=?(Course)?coursesToSelect.get(6);
}
public?void?testForEach()?{
System.out.println("總共有以下課程供選擇");
for?(Object?obj?:?coursesToSelect)?{
Course?cr?=?(Course)?obj;
System.out.println(cr.id?+?":"?+?cr.name);
}
}
public?void?testForEachForSet(Student?student)?{
System.out.println("選課完成,您總共選擇了以下幾門課程");
for?(Course?cr?:?student.courses)?{
System.out.println(cr.id?+?":"?+?cr.name);
}
}
public?static?void?main(String[]?args)?{
SetTest?st?=?new?SetTest();
Student?student?=?new?Student("1",?"小明");
System.out.println("歡迎"?+?student.name?+?"同學選課");
Scanner?console?=?new?Scanner(System.in);
st.testAdd();
st.testForEach();
for?(int?i?=?0;?i?<?3;)?{
for?(Course?cr?:?st.coursesToSelect)?{
System.out.println("請輸入第"?+?(i?+?1)?+?"門課程的id");
String?courseId?=?console.next();
if?(courseId.equals(cr.id))?{
student.courses.add(cr);
System.out.println("添加"?+?cr.name?+?"成功");
i++;
}?else?{
System.out.println("輸入錯誤,請重新輸入!");
continue;
}
}
}
st.testForEachForSet(student);
}
}
最終代碼運行的效果就像上面那樣提示說輸入錯誤,這是怎么回事?
其他地方都沒有問題,我覺得可能就是main方法里面的for循環(huán)是不是出了一些差錯,求解答!
添加回答
舉報
0/150
提交
取消