course.java
package com.imooc.collection;
/*
* 课程类
*/
public class course {
public String id;
public String name;
public course(String id,String name){
this.id=id;
this.name=name;
}
}
student.java
package com.imooc.collection;
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;
this.courses=new HashSet<course>();
}
}
SetTest.java
package com.imooc.collection;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
public class SetTest {
public List<course> courses;
public SetTest (){
this.courses = new ArrayList<course>();
}
public void TestAdd(){
course cr1 = new course("1","数据结构");
courses.add(cr1);
course temp1 = (course)courses.get(0);
System.out.println("添加了课程:"+temp1.id+temp1.name);
course cr2 = new course("2","C语言");
courses.add(1,cr2);
course temp2 = (course)courses.get(1);
System.out.println("添加了课程:"+temp2.id+temp2.name);
course cr3 = new course("3","Java语言");
courses.add(2,cr3);
course temp3 = (course)courses.get(2);
System.out.println("添加了课程:"+temp3.id+temp3.name);
course[] cour1 = {new course("4","离散数学"),new course("5","汇编语言")};
courses.addAll(3,Arrays.asList(cour1));
course temp4 = (course)courses.get(3);
course temp5 = (course)courses.get(4);
System.out.println("添加了两门课程"+temp4.id+temp4.name+temp5.id+temp5.name);
course[] cour2 = {new course("6","高等数学"),new course("7","线性代数")};
courses.addAll(5,Arrays.asList(cour2));
course temp6 = (course)courses.get(5);
course temp7 = (course)courses.get(6);
System.out.println("添加了两门课程"+temp6.id+temp6.name+temp7.id+temp7.name);
course[] cour3 = {new course("8","高等数学"),new course("9","线性代数")};
courses.addAll(7,Arrays.asList(cour3));
course temp8 = (course)courses.get(7);
course temp9 = (course)courses.get(8);
System.out.println("添加了两门课程"+temp8.id+temp8.name+temp9.id+temp9.name);
}
/*
* 通过ForEach遍历List的元素
*/
public void testForEach(){
System.out.println("有如下课程待选(foreach访问)");
for(course cr : courses){
System.out.println(cr.id+cr.name);
}
}
/**
* @param args
*/
public static void main(String[] args) {
SetTest st = new SetTest();
st.TestAdd();
st.testForEach();
student stud = new student("1","小朱");
System.out.println("欢迎学生 : "+ stud.name + "选课!");
Scanner input = new Scanner(System.in);
for(int i = 0 ; i < 3 ; i++){
System.out.println("请输入课程id");
String courseId = input.nextLine();
for(course cr : st.courses){
if(cr.id.equals(courseId)){
System.out.println(cr.id+cr.name);
}
}
}
}
}
set中添加某个对象,无论添加多少次最终只会保存第一次输入的那个对象