学生选课项目(分享)

package com.imooc;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

/**
 * 学生类
 * 
 * @author jiuhu
 *
 */
public class Student {
    private String id; // 学号
    private String name;// 姓名
    private Set<Course> studentSelectCourses; // 学生选的课程 SET类里的元素是无序不可重复的对象;
    // 构造方法

    public Student(String id, String name) {
        super();
        this.id = id;
        this.name = name;
        this.studentSelectCourses = new HashSet<Course>();
    }

    // getter,setter
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Set<Course> getStudentSelectCourses() {
        return studentSelectCourses;
    }

    public void setStudentSelectCourses(Set<Course> studentSelectCourses) {
        this.studentSelectCourses = studentSelectCourses;
    }

    @Override // 覆写toString方法
    public String toString() {
        return "学号:" + id + ",姓名:" + name;
    }

    // 学生选课
    public void addCourses(Course course) {
        this.studentSelectCourses.add(course);
    }

    // 学生取消选课
    public void removeCourses(Course course) {
        this.studentSelectCourses.remove(course);
    }

    // 显示学生选课信息
    public void printCourses() {
        Iterator<Course> it = this.studentSelectCourses.iterator();
        System.out.println(this.name + "同学所选的课程如下:");
        while (it.hasNext()) {
            System.out.println(it.next().toString());
        }
    }
}
package com.imooc;

/**
 * 课程类
 * 
 * @author jiuhu
 *
 */
public class Course {
    private String id; // 课程编号
    private String name;// 课程名称
    // 构造方法

    public Course(String id, String name) {
        super();
        this.id = id;
        this.name = name;
    }

    // getter,setter
    public String getId() {
        return id;
    }

    // 课程名称
    public String getName(String id) {
        return this.name;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override // 覆写toString方法
    public String toString() {
        return id + "." + name;
    }

}
package com.imooc;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;

/*
 * 备选课程类
 */
public class SelectToCourses {
    private List<Course> coursesList; // 课程列表 -- List对象里的元素有序可重复;
                                        // 注意:实际生活中,这个备选课程应该是没有重复的,所以建议使用Set创建对象

    public SelectToCourses() {
        super();
        this.coursesList = new ArrayList<Course>(); // 创建备选课程对象
    }

    public List<Course> getCoursesList() {
        return coursesList;
    }

    public void setCoursesList(List<Course> coursesList) {
        this.coursesList = coursesList;
    }

    // 增加备选课程
    public void addCourses() {
        Course[] courses = { new Course("1", "数据结构"), new Course("2", "C语言"), new Course("3", "大学英语"),
                new Course("4", "高等数学"), new Course("5", "微机原理") };
        this.coursesList.addAll(Arrays.asList(courses));
        // 显示备选课程
        this.printCourses();
    }

    // 显示备选课程
    public void printCourses() {
        Iterator<Course> it = this.coursesList.iterator();
        System.out.println("**可选课程如下:**");
        while (it.hasNext()) {
            System.out.println(it.next().toString());

        }
    }

    // 删除备选课程
    public void removeCourses() {
        Course[] courses = { new Course("1", "数据结构"), new Course("2", "C语言") };
        this.coursesList.removeAll(Arrays.asList(courses));
        // 显示课程
        this.printCourses();
    }

    // 修改备选课程
    public void modifyCourses() {
        // 把4.高等数学改为4.离散数学
        this.coursesList.set(0, new Course("1", "JAVA编程"));
        this.printCourses();
    }

}
package com.imooc;

import java.util.Scanner;

/**
 * 测试类
 * 
 * @author jiuhu
 *
 */
public class Test {

    public static void main(String[] args) {
        String courseId; // 课程ID
        int continueSelectCourse; // 继续选课标识 1是 0否
        boolean flag; // 成功选课标识
        Course course = null; // 课程 保存删除前的课程信息
        // 创建备选课程对象
        SelectToCourses selectTocourses = new SelectToCourses();
        selectTocourses.addCourses();

        // 创建学生对象
        Student student = new Student("1", "小明");
        System.out.println("欢迎学生:" + student.getName() + "选课!");

        // 创建输入流对象
        Scanner input = new Scanner(System.in);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值