course类
import javax.print.DocFlavor.STRING;
//课程类
public class Course {
public String id;
public String name;
public Course(String id,String name) {//含参构造器
this.id=id;
this.name=name;
}
}
student类
import java.util.HashSet;
import java.util.Set;
public class Student {
public String id;
public String name;
public Set<Course> course;
public Student(String id,String name) {
this.id=id;
this.name=name;
this.course= new HashSet<Course>(); //创建选课集合
}
}
测试类
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public class LIsttest {
public List<Object> courseToSelect; //声明选课集合courseToSelect
//添加构造方法
public LIsttest() {
//集合实例化
this.courseToSelect=new ArrayList<>();
}
//添加备选课程
public void testAdd() {
//调用add方法添加课程
Course cr1 = new Course("1", "数据结构");
courseToSelect.add(0, cr1);
//测试输出
Course temp =(Course) courseToSelect.get(0);
System.out.println("添加的课程: "+ temp.id+" "+temp.name);
Course cr2 = new Course("2", "c语言");
courseToSelect.add(0, cr2);
Course temp2 =(Course) courseToSelect.get(0);
System.out.println("添加的课程: "+ temp2.id+" "+temp2.name);
Course [] course= {new Course("3", "离散数学"),new Course("4", "汇编语言 ")};
//将course数组中所有课程添加入list
courseToSelect.addAll(Arrays.asList(course));
Course temp3=(Course)courseToSelect.get(2);
Course temp4=(Course)courseToSelect.get(3);
System.out.println("添加的课程: "+ temp3.id+" "+temp3.name);
System.out.println("添加的课程: "+ temp4.id+" "+temp4.name);
Course [] course2= {new Course("5", "高等数学"),new Course("6", "大学英语 ")};
courseToSelect.addAll(2,Arrays.asList(course2));
Course temp5=(Course)courseToSelect.get(2);
Course temp6=(Course)courseToSelect.get(3);
System.out.println("添加的课程: "+ temp5.id+" "+temp5.name);
System.out.println("添加的课程: "+ temp6.id+" "+temp6.name);
}
//访问集合元素
public void testGet() {
int size = courseToSelect.size();
System.out.println("有以下课程: ");
for(int i =0;i<size;i++) {
Course cr = (Course) courseToSelect.get(i);
System.out.println("课程"+cr.id+":"+cr.name);
}
}
//迭代器遍历list访问集合元素
public void testIterrator() {
Iterator it = courseToSelect.iterator();
System.out.println("有以下课程: ");
while(it.hasNext()) {
Course cr = (Course)it.next();
System.out.println("课程"+cr.id+":"+cr.name);
}
}
//for each方法访问集合
public void testforeach() {
for(Object obj: courseToSelect) {
Course cr = (Course)obj;
System.out.println("课程"+cr.id+":"+cr.name);
}
}
public static void main(String[]args) {
LIsttest it = new LIsttest();
it.testAdd();
it.testIterrator();
it.testforeach();
}
}