學生選課,存程式碼自用
阿新 • • 發佈:2018-11-08
Student.java
import java.util.HashSet;
import java.util.Set;
public class Student{
public String id;
public String name;
public String age;
public Set<Course> course;
public Student(String id,String name) {
this.id=id;
this.name=name;
course=new HashSet<Course>();
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public void ForEach() {
System.out.println("已選課程:");
for(Object obj:course) {
Course cr=(Course) obj;
System.out .println("課程 "+cr.id+":"+cr.name);
}
}
}
Course.java
public class Course {
public String id;
public String name;
public Course(String id,String name) {
this.id=id;
this.name=name;
}
}
StudentList.java
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class StudentList {
public Map <String, Student> students=new HashMap <String ,Student>() ;
Scanner input=new Scanner(System.in);
public void addStudent(int n) {
while(n>0) {
System.out.println("請輸入學生ID");
String id=input.nextLine();
Student st=students.get(id);
if(st==null) {
System.out.println("請輸入學生姓名");
String name=input.nextLine();
Student stu1=new Student(id,name);
students.put(id, stu1);
System.out.println("成功新增學生:"+stu1.name);
}else {
System.out.println("該學生已存在");
}
n--;
}
}
public void ShowStudent(){
System.out.println("已存在學生:");
for(String key:students.keySet()) {
Student temp=students.get(key);
System.out.println(temp.id+": "+temp.name);
}
}
}
CourseList.java
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class CourseList {
public List<Course> courses;
public CourseList() {
courses=new ArrayList<Course>();
}
public void AddCourse(int n) {
for(int i=1;i<=n;i++) {
@SuppressWarnings("resource")
Scanner input=new Scanner(System.in);
System.out.println("請輸入課程ID");
String id=input.nextLine();
System.out.println("請輸入課程名字");
String name=input.nextLine();
Course add=new Course(id,name);
courses.add(add);
System.out.println("成功新增課程:"+name);
}
}
public void ShowCourse(){
int size=courses.size();
System.out.println("已存在課程:");
for(int i=0;i<size;i++) {
Course temp=(Course)courses.get(i);
System.out.println(temp.id+": "+temp.name);
}
}
}
StuTest.java
import java.util.Scanner;
public class StuTest {
CourseList C=new CourseList();
StudentList S=new StudentList();
static Scanner input=new Scanner(System.in);
public void addCourse() {
System.out.println("請輸入需要新增課程的數量");
int n=input.nextInt();
C.AddCourse(n);
C.ShowCourse();
}
public void addStudent() {
System.out.println("請輸入需要新增學生的數量");
int n=input.nextInt();
S.addStudent(n);
S.ShowStudent();
}
public void ChooseCourse() {
System.out.println("請輸入學生ID");
String id=input.next();
Student st=(Student)S.students.get(id);
if(st==null){
System.out.println("此學生不存在");
}else {
C.ShowCourse();
System.out.println("請輸入課程ID");
int ID=input.nextInt();
Course add=(Course)C.courses.get(ID-1);
st.course.add(add);
System.out.println("成功新增課程"+add.id+":"+add.name);
}
}
public void Menu() {
System.out.println("===================================");
System.out.println("|| 1.錄入學生資訊 ||");
System.out.println("|| 2.錄入課程資訊 ||");
System.out.println("|| 3.學生選課系統 ||");
System.out.println("|| 0.退出 ||");
System.out.println("===================================");
}
public static void main(String[] args) {
StuTest P=new StuTest();
while(1<2) {
P.Menu();
int n=input.nextInt();
if(n==0) {break;}
switch (n) {
case 1:P.addStudent();break;
case 2:P.addCourse();break;
case 3:P.ChooseCourse();break;
case 0:n=0;break;
default: break;
}
}
}
}