Java實現簡單的學生教師管理系統
本文實例為大傢分享瞭Java實現學生教師管理系統的具體代碼,供大傢參考,具體內容如下
需求:
我們可以通過管理系統對學生和教師進行管理
對象學生和教師進行增刪改查等的功能
1、Student和Teacher的父類
2、Student類
3、Teacher類
4、Utils工具類
5、測試類
Student和Teacher的父類
public class Person { private String id; // 編號 private String name; // 姓名 private String IDcard; // 身份證 private String sex; // 性別 private String birthday; // 生日 private int age; //年齡 private String site; //地址 private String phone; // 電話 public Person() { } public Person(String id, String name, String IDcard, String sex, String birthday, String site, String phone) throws ParseException { this.id = id; this.name = name; this.IDcard = IDcard; this.sex = sex; this.birthday = birthday; this.age = Utils.birthdayToAge(birthday); this.site = site; this.phone = phone; } 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 String getIDcard() { return IDcard; } public void setIDcard(String IDcard) { this.IDcard = IDcard; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getBirthday() { return birthday; } public void setBirthday(String birthday) throws ParseException { this.birthday = birthday; this.age = Utils.birthdayToAge(birthday); } public int getAge() { return age; } public String getSite() { return site; } public void setSite(String site) { this.site = site; } public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; } }
Student類
import java.text.ParseException; public class Student extends Person { private int grade; // 成績 private String group; // 班級 // 學生號,姓名,身份證,性別,生日,地址,手機號,成績,班級 public Student(String id, String name, String IDcard, String sex, String birthday, String site, String phone, int grade, String group) throws ParseException { super(id, name, IDcard, sex, birthday, site, phone); this.grade = grade; this.group = group; } public Student() { } public int getGrade() { return grade; } public void setGrade(int grade) { this.grade = grade; } public String getGroup() { return group; } public void setGroup(String group) { this.group = group; } }
Teacher類
import java.text.ParseException; public class Teacher extends Person{ private String career; // 專業 private String salary; // 工資 // 教師號,姓名,身份證,性別,生日,地址,手機號,專業,工資 public Teacher(String id, String name, String IDcard, String sex, String birthday, String site, String phone, String career, String salary) throws ParseException { super(id, name, IDcard, sex, birthday, site, phone); this.career = career; this.salary = salary; } public Teacher() { } public String getCareer() { return career; } public void setCareer(String career) { this.career = career; } public String getSalary() { return salary; } public void setSalary(String salary) { this.salary = salary; } }
根據生日計算年齡的一個靜態工具類
Utils
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Utils { public static int birthdayToAge(String birthday) throws ParseException { SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd"); Date date = sdf.parse(birthday); Date date1 = new Date(); long time = date.getTime(); long time1 = date1.getTime(); long age = (time1 - time) / 1000 / 60 / 60/ 24 / 365; return (int)age; } }
測試類
import java.text.ParseException; import java.util.ArrayList; import java.util.Scanner; public class StudentAndTeacherSystem { public static Scanner sc = new Scanner(System.in); public static ArrayList<Student> students = new ArrayList(); public static ArrayList<Teacher> teachers = new ArrayList(); public static void main(String[] args) throws ParseException { System.out.println("********************歡迎來到學生教師管理系統********************"); while (true) { System.out.println("【1】 學生管理系統 【2】 教師管理系統 【3】 退出"); String num = sc.next(); switch (num) { case "1": // 學生管理系統 studentSystem(); break; case "2": // 教師管理系統 teacherSystem(); break; case "3": System.out.println("感謝您的使用!"); System.exit(0); default: System.out.println("您輸入的編號" + num + "有誤!"); break; } } } // 學生 public static void studentSystem() throws ParseException { System.out.println("**********************【歡迎來到學生管理系統】**********************"); while (true){ System.out.println("*******【1】添加學生***************************【2】 修改學生*********"); System.out.println("*******【3】刪除學生***************************【4】 查看所有學生******"); System.out.println("*******【5】查找指定學生************************【6】 統計所有學生信息**"); System.out.println("***************************【7】 返回上一級***************************"); System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~【請輸入您要選擇的編號】~~~~~~~~~~~~~~~~~~~~~~~~"); String num = sc.next(); switch (num){ case "1": // 添加 addStudent(); break; case "2": // 修改 updateStudent(); break; case "3": // 刪除 deleteStudent(); break; case "4": // 查看 selectStudent(); break; case "5": // 指定查看 assignStudent(); break; case "6": // 統計 statisticsStudent(); break; case "7": System.out.println("返回上一級"); return; default: System.out.println("您輸入的編號" + num + "有誤!"); break; } } } public static void addStudent() throws ParseException { // System.out.println("添加成功!"); System.out.println("請輸入您的學生號:"); while (true) { String id = sc.next(); int index = getIndex(students, id); if (index == -1) { System.out.println("請輸入您的姓名:"); String name = sc.next(); System.out.println("請輸入您的身份證:"); String IDcard = sc.next(); System.out.println("請輸入您的性別:"); String sex = sc.next(); System.out.println("請輸入您的生日(格式:2000-10-10)"); String birthday = sc.next(); System.out.println("請輸入您的傢庭地址:"); String site = sc.next(); System.out.println("請輸入您的手機號:"); String phone = sc.next(); System.out.println("請輸入您的成績:"); int grade = sc.nextInt(); System.out.println("請輸入您的班級:"); String group = sc.next(); Student stu = new Student(id, name, IDcard, sex, birthday, site, phone, grade, group); students.add(stu); System.out.println("添加成功!"); return; } else { System.out.println("您輸入的學生號已存在,請重新輸入!"); } } } // 修改 public static void updateStudent() throws ParseException { // System.out.println("修改成功!"); System.out.println("請輸入您要修改的學生號:"); String id = sc.next(); int index = getIndex(students,id); if(index == -1){ System.out.println("您輸入的學生號不存在!!"); return; } System.out.println("請輸入您的姓名:"); String name = sc.next(); System.out.println("請輸入您的身份證:"); String IDcard = sc.next(); System.out.println("請輸入您的性別:"); String sex = sc.next(); System.out.println("請輸入您的生日:"); String birthday = sc.next(); System.out.println("請輸入您的地址:"); String site = sc.next(); System.out.println("請輸入您的手機號:"); String phone = sc.next(); System.out.println("請輸入您的成績:"); int grade = sc.nextInt(); System.out.println("請輸入您的班級:"); String group = sc.next(); Student stu = new Student(id,name, IDcard,sex,birthday,site,phone,grade,group); students.set(index,stu); System.out.println("修改成功!"); } // 刪除 public static void deleteStudent() { // System.out.println("刪除成功!"); System.out.println("請輸入您要刪除的學生號:"); String id = sc.next(); int index = getIndex(students,id); if(index == -1){ System.out.println("您輸入的學生號不存在!"); return; }else{ students.remove(index); System.out.println("刪除成功!"); return; } } // 查看 public static void selectStudent() { // System.out.println("查看成功!"); int num = students.size(); if(num == 0){ System.out.println("暫無信息,請添加以後在來查看!"); return; } // 編號,姓名,身份證,性別,生日,地址,手機號,成績,班級 System.out.println("學生號\t姓名\t身份證\t性別\t生日\t年齡\t地址\t手機號\t成績\t班級"); for (int i = 0; i < students.size(); i++) { Student stu = students.get(i); System.out.println(stu.getId() + "\t" + stu.getName() + "\t" + stu.getIDcard() + "\t" + stu.getSex() + "\t" + stu.getBirthday() + "\t" + stu.getAge() + "\t" + stu.getSite() + "\t" + stu.getPhone() + "\t" + stu.getGrade() + "\t" + stu.getGroup()); } } // 指定查看 public static void assignStudent() { // System.out.println("指定查看成功!"); System.out.println("請輸入您要查找的學生號:"); String id = sc.next(); int index = getIndex(students,id); if(index == -1){ System.out.println("您輸入的學生號不存在!"); }else{// // 編號,姓名,身份證,性別,生日,地址,手機號,成績,班級 for (int i = 0; i < students.size(); i++) { Student stu = students.get(i); System.out.println("學生號:" + stu.getId()); System.out.println("姓 名:" + stu.getName()); System.out.println("生 日:" + stu.getBirthday()); System.out.println("年 齡:" + stu.getAge()); System.out.println("身份證:" + stu.getIDcard()); System.out.println("性 別:" + stu.getSex()); System.out.println("地 址:" + stu.getSite()); System.out.println("手機號:" + stu.getPhone()); System.out.println("成 績:" + stu.getGrade()); System.out.println("班 級:" + stu.getGroup()); } } } // 統計 public static void statisticsStudent() { // System.out.println("統計成功!"); int countSex = 0; int countGrade = 0; for (int i = 0; i < students.size(); i++) { Student stu = students.get(i); if(stu.getSex().equals("男")){ countSex++; } if(stu.getGrade() > 60){ countGrade++; } } System.out.println("學校一共有:" + students.size() + "個人"); System.out.println("男生有:" + countSex + "人"); System.out.println("女生有:" + (students.size() - countSex) + "人"); System.out.println("及格有:" + countGrade + "人"); System.out.println("不及格有:" + (students.size() - countGrade) + "人"); } // 判斷學生是否存在 public static int getIndex(ArrayList<Student> students,String id){ int index = -1; for (int i = 0; i < students.size(); i++) { Student stu = students.get(i); String sid = stu.getId(); if(sid.equals(id)){ index = i; } } return index; } //=================================================================================== // 教師 public static void teacherSystem() throws ParseException { System.out.println("********************【歡迎來到教師管理系統】**************************"); while (true){ System.out.println("*******【1】添加教師***************************【2】 修改教師*********"); System.out.println("*******【3】刪除教師***************************【4】 查看所有教師******"); System.out.println("*******【5】查找指定教師************************【6】 統計所有教師信息**"); System.out.println("***************************【7】 返回上一級***************************"); System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~【請輸入您要選擇的編號】~~~~~~~~~~~~~~~~~~~~~~~~"); String num = sc.next(); // 編號,姓名,身份證,性別,生日,地址,手機號,成績,班級 switch (num){ case "1": // 添加 addTeacher(); break; case "2": // 修改 updateTeacher(); break; case "3": // 刪除 deleteTeacher(); break; case "4": // 查看 selectTeacher(); break; case "5": // 指定查看 assignTeacher(); break; case "6": // 統計 statisticsTeacher(); break; case "7": System.out.println("返回上一級"); return; default: System.out.println("您輸入的編號" + num + "有誤!"); break; } } } // 添加 public static void addTeacher() throws ParseException { //System.out.println("添加成功!"); System.out.println("請輸入您的教師號:"); while (true) { String id = sc.next(); int index = getindex(teachers, id); if (index == -1) { System.out.println("請輸入您的姓名:"); String name = sc.next(); System.out.println("請輸入您的身份證:"); String IDcard = sc.next(); System.out.println("請輸入您的性別:"); String sex = sc.next(); System.out.println("請輸入您的生日(格式:2000-10-10)"); String birthday = sc.next(); System.out.println("請輸入您的傢庭地址:"); String site = sc.next(); System.out.println("請輸入您的手機號:"); String phone = sc.next(); System.out.println("請輸入您的專業:"); String career = sc.next(); System.out.println("請輸入您的工資:"); String salary = sc.next(); Teacher teacher = new Teacher(id, name, IDcard, sex, birthday, site, phone, career, salary); teachers.add(teacher); System.out.println("添加成功!"); return; } else { System.out.println("您輸入的教師號已存在,請重新輸入!"); } } } // 修改 public static void updateTeacher() throws ParseException { //System.out.println("修改成功!"); System.out.println("請輸入您要修改的教師號:"); String id = sc.next(); int index = getindex(teachers,id); if(index == -1){ System.out.println("您輸入的教師號不存在!!"); return; } System.out.println("請輸入您的姓名:"); String name = sc.next(); System.out.println("請輸入您的身份證:"); String IDcard = sc.next(); System.out.println("請輸入您的性別:"); String sex = sc.next(); System.out.println("請輸入您的生日:"); String birthday = sc.next(); System.out.println("請輸入您的地址:"); String site = sc.next(); System.out.println("請輸入您的手機號:"); String phone = sc.next(); System.out.println("請輸入您的專業:"); String career = sc.next(); System.out.println("請輸入您的工資:"); String salary = sc.next(); Teacher teacher = new Teacher(id,name, IDcard,sex,birthday,site,phone,career,salary); teachers.set(index,teacher); System.out.println("修改成功!"); } // 刪除 public static void deleteTeacher() { //System.out.println("刪除成功!"); System.out.println("請輸入您要刪除的教師號:"); String id = sc.next(); int index = getindex(teachers,id); if(index == -1){ System.out.println("您輸入的教師號不存在!"); return; }else{ teachers.remove(index); System.out.println("刪除成功!"); return; } } // 查看 public static void selectTeacher() { //System.out.println("查看成功!"); int num = teachers.size(); if(num == 0){ System.out.println("暫無信息,請添加以後在來查看!"); return; } // 編號,姓名,身份證,性別,生日,地址,手機號,成績,班級 System.out.println("教師號\t姓名\t身份證\t性別\t生日\t年齡\t地址\t手機號\t專業\t工資"); for (int i = 0; i < teachers.size(); i++) { Teacher teacher = teachers.get(i); System.out.println(teacher.getId() + "\t" + teacher.getName() + "\t" + teacher.getIDcard() + "\t" + teacher.getSex() + "\t" + teacher.getBirthday() + "\t" + teacher.getAge() + "\t" + teacher.getSite() + "\t" + teacher.getPhone() + "\t" + teacher.getCareer() + "\t" + teacher.getSalary()); } } // 指定查看 public static void assignTeacher() { //System.out.println("指定查看成功!"); System.out.println("請輸入您要查找的教師號:"); String id = sc.next(); int index = getindex(teachers,id); if(index == -1){ System.out.println("您輸入的教師號不存在!"); }else{// // 編號,姓名,身份證,性別,生日,地址,手機號,成績,班級 for (int i = 0; i < teachers.size(); i++) { Teacher teacher = teachers.get(i); System.out.println("教師號:" + teacher.getId()); System.out.println("姓 名:" + teacher.getName()); System.out.println("生 日:" + teacher.getBirthday()); System.out.println("年 齡:" + teacher.getAge()); System.out.println("身份證:" + teacher.getIDcard()); System.out.println("性 別:" + teacher.getSex()); System.out.println("地 址:" + teacher.getSite()); System.out.println("手機號:" + teacher.getPhone()); System.out.println("專 業:" + teacher.getCareer()); System.out.println("工 資:" + teacher.getCareer()); } } } // 統計 public static void statisticsTeacher() { // System.out.println("統計成功!"); int countSex = 0; for (int i = 0; i < teachers.size(); i++) { Teacher teacher = teachers.get(i); if(teacher.getSex().equals("男")){ countSex++; } } System.out.println("學校一共有:" + teachers.size() + "個教師"); System.out.println("男教師有:" + countSex + "人"); System.out.println("女教師有:" + (teachers.size() - countSex) + "人"); } // 判斷教師是否存在 public static int getindex(ArrayList<Teacher> teachers,String id){ int index = -1; for (int i = 0; i < teachers.size(); i++) { Teacher teacher = teachers.get(i); String sid = teacher.getId(); if(sid.equals(id)){ index = i; } } return index; } }
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。