Java类集-多对多关系范例

来源:互联网 发布:工商银行查余额软件 编辑:程序博客网 时间:2024/05/18 13:12
package org.exec1;


import java.util.ArrayList;
import java.util.List;


public class Course {
private String name;
private int credit;
private List<Student> allStudent;
public Course(){
this.allStudent = new ArrayList<Student>();
}
public Course(String name,int credit){
this();
this.setName(name);
this.setCredit(credit);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getCredit() {
return credit;
}
public void setCredit(int credit) {
this.credit = credit;
}
public List<Student> getAllStudent() {
return allStudent;
}
public void setAllStudent(List<Student> allStudent) {
this.allStudent = allStudent;
}
public String toString(){
return "课程名称:"+this.name+";课程学分:"+this.credit;
}

}



package org.exec1;


import java.util.ArrayList;
import java.util.List;


public class Student {
private String name;
private int age;
private List<Course> allCourse;
public Student(){
this.allCourse = new ArrayList<Course>();
}
public Student(String name,int age){
this();
this.setName(name);
this.setAge(age);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public List<Course> getAllCourse() {
return allCourse;
}
@Override
public String toString() {
// TODO 自动生成的方法存根
return "学生姓名:"+this.name+",年龄:"+this.age;
}
}



package org.exec1;


import java.util.Iterator;


public class TestMore {
public static void main(String[] args) {
Course c1 = new Course("英语",3);
Course c2 = new Course("计算机",5);
Student s1 = new Student("张三",20);
Student s2 = new Student("李四",21);
Student s3 = new Student("王五",22);
Student s4 = new Student("赵六",23);
Student s5 = new Student("孙七",24);
Student s6 = new Student("钱八",25);

c1.getAllStudent().add(s1);
c1.getAllStudent().add(s2);
c1.getAllStudent().add(s6);
s1.getAllCourse().add(c1);
s2.getAllCourse().add(c1);
s6.getAllCourse().add(c1);

c2.getAllStudent().add(s1);
c2.getAllStudent().add(s2);
c2.getAllStudent().add(s3);
c2.getAllStudent().add(s4);
c2.getAllStudent().add(s5);
c2.getAllStudent().add(s6);
s1.getAllCourse().add(c2);
s2.getAllCourse().add(c2);
s3.getAllCourse().add(c2);
s4.getAllCourse().add(c2);
s5.getAllCourse().add(c2);
s6.getAllCourse().add(c2);

System.out.println(c1);
Iterator<Student> iter1 = c1.getAllStudent().iterator();
while(iter1.hasNext()){
Student s = iter1.next();
System.out.println("\t|-"+s);
}
System.out.println(s6);
Iterator<Course> iter2 = s6.getAllCourse().iterator();
while(iter2.hasNext()){
Course c = iter2.next();
System.out.println("\t|-"+c);
}
}
}

0 0
原创粉丝点击