public void create_Student_And_SelectCours(){ Student st=new Student("1","小明"); System.out.println("欢迎"+st.id+"号"+st.name+"同学来选课"); Scanner console=new Scanner(System.in); for(int i=0;i<3;i++){ System.out.println("请输入课程id"); String courseId=console.next(); for(int j=0;j<coursesToSelect.size();j++){ Course obj=coursesToSelect.get(j); if(obj.id.equals(courseId)); st.courses.add(obj); } } for(Course e:st.courses){ System.out.println(e.id+e.name); } } public static void main(String[] args){ TestSet it=new TestSet(); it.testAdd(); it.testForEach(); it.create_Student_And_SelectCours(); } }
public static void main(String[] args) {
// TODO Auto-generated method stub
TestSet st=new TestSet();
st.testAdd();
st.testForEach();
Student student=new Student("1","小明");
System.out.println("欢迎学生"+student.name+"选择课程!");
Scanner inputcourse=new Scanner(System.in);
for(int i=0;i<3;i++){
System.out.print("请输入你要选择的课程:");
String courseId=inputcourse.next();
for(Course cr:st.coursesToSelect){
if(cr.id.equals(courseId)){
student.Courses.add(cr);
}
}
}
st.TestSetForEachForSet(student);
}
public void TestSetForEachForSet(Student student){
for(Course cr:student.Courses){
System.out.println("选择了课程"+cr.id+"."+cr.name);
}
}
}
1:数据结构
2:C语言
3:离散数学
4:汇编语言
5:高等数学
6:大学英语
欢迎学生小明选择课程!
请输入你要选择的课程:1
请输入你要选择的课程:2
请输入你要选择的课程:3
选择了课程1.数据结构
选择了课程2.C语言
选择了课程3.离散数学
我这个也是每次输出都是有序的 不知道为什么。。。。。
HashSet本来就是按照哈希算法散列排序,顺序比较随机。要想按自然顺序排的话用TreeSet。想按集合对象的放入顺序排序的话应LinkedHashSet。
你试试输入相同的课程序号,但输入的顺序不同。
如:
我选:1,2,4
你输入:1,2,4
和你输入:4,2,1
最后输出的你选课程的顺序是不一样的。