学生选课系统:一个学生可以选择多门课程,一门课程也可以被很多学生选择,学生和课程之间是多对多的关系。

首先我们先封装一个学生类,里面有学生的姓名、年龄等属性,还有盛放课程的List集合。然后封装一个课程类,有课程名称,学分还有盛放学生的List集合。最后是一个测试类,在测试类里实例化学生和课程进行测试。

代码如下:

学生类:package com.dr.selectcourse;

import java.util.ArrayList;

import java.util.List;

public class Student {

private String name;

private int age;

private List CourseList;

public Student(String name,int age){

this.setName(name);

this.setAge(age);

this.setCourseList(new ArrayList());

}

public void addCourse(Course course){

this.CourseList.add(course);

}

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 getCourseList() {

return CourseList;

}

public void setCourseList(List courseList) {

this.CourseList = courseList;

}

}

课程类:

package com.dr.selectcourse;

import java.util.ArrayList;

import java.util.List;

public class Course {

private String name;

private float score;

private List StudentList;

public Course(String name,float score){

this.setName(name);

this.setScore(score);

this.setStudentList(new ArrayList());

}

public void addStudent(Student student){

this.StudentList.add(student);

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public float getScore() {

return score;

}

public void setScore(float score) {

this.score = score;

}

public List getStudentList() {

return StudentList;

}

public void setStudentList(List studentList) {

this.StudentList = studentList;

}

}

测试类

package com.dr.selectcourse;

import java.util.Iterator;

import java.util.List;

public class SelectCourse {

public static void main(String[] args) {

Course c1=new Course("应用密码学",2.0f);

Course c2=new Course("中小型网络组建",5.0f);

Course c3=new Course("数字水印",2.0f);

Student stu1=new Student("宋可",20);

Student stu2=new Student("田馨",21);

Student stu3=new Student("林岚",21);

Student stu4=new Student("刘昕",22);

Student stu5=new Student("张涵",21);

c1.addStudent(stu1);

stu1.addCourse(c1);

c2.addStudent(stu2);

stu2.addCourse(c2);

c3.addStudent(stu3);

stu3.addCourse(c3);

c1.addStudent(stu4);

stu4.addCourse(c1);

c3.addStudent(stu5);

stu5.addCourse(c3);

System.out.println("学生姓名:"+stu1.getName());

Iterator iter1=stu1.getCourseList().iterator();

while(iter1.hasNext()){

Course c=iter1.next();

System.out.println("\t| 课程名称:"+c.getName()+",学分: "+c.getScore());

}

System.out.println("课程名称:"+c3.getName());

Iterator iter2=c3.getStudentList().iterator();

while(iter2.hasNext()){

Student s=iter2.next();

System.out.println("\t| 学生姓名:"+s.getName()+",学生年龄:"+s.getAge());

}

}

}

运行结果:

java高校选课系统博客,学生选课系统相关推荐

  1. java毕业设计大学生个人博客网站Mybatis+系统+数据库+调试部署

    java毕业设计大学生个人博客网站Mybatis+系统+数据库+调试部署 java毕业设计大学生个人博客网站Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Ja ...

  2. JAVA课程设计个人博客 学生成绩管理 201521123014 黄绍桦

    JAVA课程设计个人博客 学生成绩管理 201521123014 黄绍桦 1. 团队课程设计博客链接 http://www.cnblogs.com/kawajiang/p/7062407.html 2 ...

  3. java毕业设计博客管理系统Mybatis+系统+数据库+调试部署

    java毕业设计博客管理系统Mybatis+系统+数据库+调试部署 java毕业设计博客管理系统Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开 ...

  4. 基于JAVA基于网络平台个人博客系统计算机毕业设计源码+系统+lw文档+部署

    基于JAVA基于网络平台个人博客系统计算机毕业设计源码+系统+lw文档+部署 基于JAVA基于网络平台个人博客系统计算机毕业设计源码+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...

  5. JAVA计算机毕业设计大学生个人博客网站Mybatis+系统+数据库+调试部署

    JAVA计算机毕业设计大学生个人博客网站Mybatis+系统+数据库+调试部署 JAVA计算机毕业设计大学生个人博客网站Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开 ...

  6. java毕业设计个人博客网站Mybatis+系统+数据库+调试部署

    java毕业设计个人博客网站Mybatis+系统+数据库+调试部署 java毕业设计个人博客网站Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开 ...

  7. Java+Swing+dat文件存储实现学生选课管理系统

    Java+Swing+dat文件存储实现学生选课管理系统 一.系统介绍 二.系统展示 1.用户登陆.注册 2.课程信息查询 3.添加课程 4.选课 5.退课 三.系统实现 四.其他 1.其它系统 2. ...

  8. 2023计算机毕业设计SSM最新选题之java“逢遇”个人博客平台qaoxv

    2023计算机毕业设计SSM最新选题之java"逢遇"个人博客平台qaoxv 这个的话首先你对那些方面比较熟悉,毕竟软件工程范围还是比较广的,所以这个你得要自己确定好方向,这个很重 ...

  9. 计算机毕业设计Java高校微后勤服务平台(源码+系统+mysql数据库+Lw文档)

    计算机毕业设计Java高校微后勤服务平台(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java高校微后勤服务平台(源码+系统+mysql数据库+Lw文档) 本源码技术栈: 项目架构:B/S ...

  10. java高校心理测评管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署

    java高校心理测评管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 java高校心理测评管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 本源码技术栈: 项目 ...

最新文章

  1. 数据库“新解”,看这里,get!
  2. 「数据库系列四」分布式数据库CAP理论与最终一致性
  3. 【2018ACM山东省赛 - G】Games(Nim博弈 + dp)
  4. 关于java中的集合如何删除一个元素。
  5. 【剑指offer】面试题27:二叉树的镜像(Java)
  6. niginx之虚拟主机和域名解析
  7. tensorflow 读取cifar_对tensorflow中cifar-10文档的Read操作详解
  8. WCF中NetTCp配置
  9. java 连线题_java练习题
  10. android 请求https请求,Android 实现 HttpClient 请求Https
  11. C#--打包安装项目
  12. 2021年度国内网络安全事件总结
  13. 视频教程-SpringBoot核心技术-Java
  14. 自适应OCXO漂移校正算法(翻译)
  15. 自助订餐管理系统(小程序+后台源码+数据库)
  16. outlook你的邮件服务器证书无效,安卓手机outlook无法登录、添加帐户
  17. 2021年全球烤面包机收入大约1363.7百万美元,预计2028年达到1536.8百万美元
  18. IOS 监控屏幕旋转
  19. HR团队如何提升效率?人力资源RPA给你答案
  20. 2022年最实用的DevOps工具

热门文章

  1. 2021.3.8-第一次MD作业
  2. linux平台基于python语言的MYO手环手势识别开发(二)
  3. 浏览器https证书存在错误怎么办?
  4. python中的f函数_05-python中函数的使用
  5. 微信开发笔记:生成带参数的公众号二维码
  6. 【智能路由器】openwrt添加服务项
  7. 弹幕游戏:Ryan 最近迷上了弹幕游戏。所谓弹幕游戏,指的是玩家操控一位角色对来袭的大量敌人进行攻击,并在过程中升级、强化自我的能力,最终打败 Boss 的一类游戏...
  8. html css remove,CSS類別操作--.removeClass()
  9. 设置gvim中横竖光标_VIM的配置:高亮光标所在的行列
  10. c语言中windows.h是什么意思,c语言中memory.h有什么作用