教你用java實現(xiàn)學(xué)生成績管理系統(tǒng)(附詳細(xì)代碼)
1.需求
- 添加學(xué)生:通過鍵盤錄入學(xué)生信息,添加到集合中
- 刪除學(xué)生:通過鍵盤錄入需要刪除學(xué)生的學(xué)號,將該學(xué)生對象從集合中刪除
- 修改學(xué)生:通過鍵盤錄入需要修改學(xué)的學(xué)號,將該學(xué)生對象的其他信息進(jìn)行修改
- 查看學(xué)生:將集合中的學(xué)生對象信息進(jìn)行展示
- 退出系統(tǒng):結(jié)束程序
2.代碼實現(xiàn)
Student類 代碼如下:
package StudentManger; /* 學(xué)生信息:姓名,地址 */ public class Student { String name; String address; int ChineseGrade; int MathGrade; int EnglishGrade; int sum; double averGrade; public int getSum() { return sum; } public void setSum(int sum) { this.sum = sum; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public int getChineseGrade() { return ChineseGrade; } public void setChineseGrade(int chineseGrade) { ChineseGrade = chineseGrade; } public int getMathGrade() { return MathGrade; } public void setMathGrade(int mathGrade) { MathGrade = mathGrade; } public int getEnglishGrade() { return EnglishGrade; } public void setEnglishGrade(int englishGrade) { EnglishGrade = englishGrade; } public double getAverGrade() { return averGrade; } public void setAverGrade(double averGrade) { this.averGrade = averGrade; } }
主類中的代碼如下:
package StudentManger; import java.util.HashMap; import java.util.Scanner; import java.util.Set; public class Demo { public static void main(String[] args) { //創(chuàng)建hashmap集合 HashMap<Integer,Student> hashMap = new HashMap<>(); Scanner sc = new Scanner(System.in); //創(chuàng)建開始頁面 while (true) { printview(); System.out.println("請輸入您要實現(xiàn)的的功能:"); int data = sc.nextInt(); switch (data) { case 1 : setStudent(hashMap);break; case 2 : delete(hashMap);break; case 3 : Change(hashMap);break; case 4 :print01(hashMap);break; case 5 :print02(hashMap);break; case 6 : System.out.println("歡迎下次使用!");System.exit(1); } } } public static void printview() { System.out.println("----歡迎來到學(xué)生管理系統(tǒng)!-----"); System.out.println("----請選擇以下對應(yīng)的功能-------"); System.out.println("-------1.添加學(xué)生信息---------"); System.out.println("-------2.刪除學(xué)生信息---------"); System.out.println("-------3.修改學(xué)生信息---------"); System.out.println("-------4.通過學(xué)號查看單個學(xué)生信息(通過key顯示)---------"); System.out.println("-------5.查看所有學(xué)生信息------"); System.out.println("-------6.退出管理系統(tǒng)---------"); } //添加學(xué)生信息 public static void setStudent(HashMap<Integer,Student> hs) { Scanner sc = new Scanner(System.in); Student s = new Student(); System.out.println("請輸入學(xué)生的地址:"); String address =sc.nextLine(); s.setAddress(address); System.out.println("請輸入學(xué)生的姓名:"); String name = sc.nextLine(); s.setName(name); System.out.println("請輸入學(xué)生的學(xué)號:"); Integer number = sc.nextInt(); System.out.println("請輸入學(xué)生的語文成績:"); Integer yuwen = sc.nextInt(); s.setChineseGrade(yuwen); System.out.println("請輸入學(xué)生的數(shù)學(xué)成績:"); Integer shuxue = sc.nextInt(); s.setMathGrade(shuxue); System.out.println("請輸入學(xué)生的英語成績:"); Integer yingyu = sc.nextInt(); s.setEnglishGrade(yingyu); //計算平均成績和總體成績 int sum = shuxue + yuwen+yingyu; double aver = sum/3; s.setSum(sum); s.setAverGrade(aver); //將學(xué)生信息存儲到hashmap中 hs.put(number,s); System.out.println("添加成功!"); } //刪除學(xué)生信息 public static void delete(HashMap<Integer,Student> hs) { Scanner sc = new Scanner(System.in); System.out.println("請輸入您要刪除學(xué)生的學(xué)號:"); Integer number = sc.nextInt(); if(hs.get(number)!=null) { hs.remove(number); System.out.println("刪除成功!"); } else { System.out.println("此學(xué)生不存在!"); } } //顯示單個學(xué)生信息 public static void print01(HashMap<Integer,Student> hs) { Scanner sc = new Scanner(System.in); System.out.println("請輸入您要查詢的學(xué)生的學(xué)號:"); Integer number = sc.nextInt(); if (hs.get(number)!=null) { Student s = hs.get(number); System.out.println("查詢成功!"); System.out.println("學(xué)號:"+number+" 姓名:"+s.getName()+" 地址:"+s.getAddress()+" 語文成績:"+s.getChineseGrade()+" 數(shù)學(xué)成績:"+s.getMathGrade()+" 英語成績:"+s.getEnglishGrade()+s.getAddress()+" 成績總和:"+s.getSum()+" 平均成績:"+s.getAverGrade()); } else { System.out.println("該學(xué)生不存在!"); } } //顯示所有學(xué)生信息 public static void print02(HashMap<Integer,Student> hs) { System.out.println("所有學(xué)生信息如下:"); Set<Integer> set = hs.keySet(); for (Integer i :set) { Student s = hs.get(i); System.out.println("學(xué)號:"+i+" 姓名:"+s.getName()+" 地址:"+s.getAddress()+" 語文成績:"+s.getChineseGrade()+" 數(shù)學(xué)成績:"+s.getMathGrade()+" 英語成績:"+s.getEnglishGrade()+" 成績總和:"+s.getSum()+" 平均成績:"+s.getAverGrade()); } } //修改學(xué)生信息 public static void Change(HashMap<Integer,Student> hs) { Scanner sc = new Scanner(System.in); System.out.println("請輸入你要修改的學(xué)生學(xué)號:"); int number = sc.nextInt(); if (hs.get(number)!=null) { Scanner sc1 = new Scanner(System.in); Student s = hs.get(number); System.out.println("請輸入您要修改的學(xué)生的具體信息:(姓名,地址,語文成績,數(shù)學(xué)成績。英語成績)"); String data = sc1.nextLine(); if (data.equals("姓名")) { System.out.println("請輸入您要修改的姓名:"); String name = sc1.nextLine(); s.setName(name); System.out.println("修改完成!"); } else if (data.equals("地址")) { System.out.println("請輸入您要修改的地址:"); String address = sc1.nextLine(); s.setAddress(address); System.out.println("修改完成!"); } else if (data.equals("語文成績")) { System.out.println("請輸入您要修改的語文成績:"); int ytuwen = sc1.nextInt(); s.setChineseGrade(ytuwen); System.out.println("修改完成!"); } else if (data.equals("數(shù)學(xué)成績")) { System.out.println("請輸入您要修改的數(shù)學(xué)成績:"); int shuXue = sc1.nextInt(); s.setChineseGrade(shuXue); System.out.println("修改完成!"); } else if (data.equals("英語成績")) { System.out.println("請輸入您要修改的英語成績:"); int yingyu = sc1.nextInt(); s.setChineseGrade(yingyu); System.out.println("修改完成!"); } } else { System.out.println("該學(xué)生不存在!"); } } }
部分測試如下:
----歡迎來到學(xué)生管理系統(tǒng)!-----
----請選擇以下對應(yīng)的功能-------
-------1.添加學(xué)生信息---------
-------2.刪除學(xué)生信息---------
-------3.修改學(xué)生信息---------
-------4.通過學(xué)號查看單個學(xué)生信息(通過key顯示)---------
-------5.查看所有學(xué)生信息------
-------6.退出管理系統(tǒng)---------
請輸入您要實現(xiàn)的的功能:
1
請輸入學(xué)生的地址:
桂林電子科技大學(xué)
請輸入學(xué)生的姓名:
Ken
請輸入學(xué)生的學(xué)號:
01
請輸入學(xué)生的語文成績:
130
請輸入學(xué)生的數(shù)學(xué)成績:
150
請輸入學(xué)生的英語成績:
140
添加成功!
----歡迎來到學(xué)生管理系統(tǒng)!-----
----請選擇以下對應(yīng)的功能-------
-------1.添加學(xué)生信息---------
-------2.刪除學(xué)生信息---------
-------3.修改學(xué)生信息---------
-------4.通過學(xué)號查看單個學(xué)生信息(通過key顯示)---------
-------5.查看所有學(xué)生信息------
-------6.退出管理系統(tǒng)---------
請輸入您要實現(xiàn)的的功能:
5
所有學(xué)生信息如下:
學(xué)號:1 姓名:Ken 地址:桂林電子科技大學(xué) 語文成績:130 數(shù)學(xué)成績:150 英語成績:140 成績總和:420 平均成績:140.0
----歡迎來到學(xué)生管理系統(tǒng)!-----
----請選擇以下對應(yīng)的功能-------
-------1.添加學(xué)生信息---------
-------2.刪除學(xué)生信息---------
-------3.修改學(xué)生信息---------
-------4.通過學(xué)號查看單個學(xué)生信息(通過key顯示)---------
-------5.查看所有學(xué)生信息------
-------6.退出管理系統(tǒng)---------
請輸入您要實現(xiàn)的的功能:
4
請輸入您要查詢的學(xué)生的學(xué)號:
01
查詢成功!
學(xué)號:1 姓名:Ken 地址:桂林電子科技大學(xué) 語文成績:130 數(shù)學(xué)成績:150 英語成績:140桂林電子科技大學(xué) 成績總和:420 平均成績:140.0
----歡迎來到學(xué)生管理系統(tǒng)!-----
----請選擇以下對應(yīng)的功能-------
-------1.添加學(xué)生信息---------
-------2.刪除學(xué)生信息---------
-------3.修改學(xué)生信息---------
-------4.通過學(xué)號查看單個學(xué)生信息(通過key顯示)---------
-------5.查看所有學(xué)生信息------
-------6.退出管理系統(tǒng)---------
請輸入您要實現(xiàn)的的功能:
6
歡迎下次使用!
總結(jié)
到此這篇關(guān)于用java實現(xiàn)學(xué)生成績管理系統(tǒng)的文章就介紹到這了,更多相關(guān)java學(xué)生成績管理系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
spring boot+thymeleaf+bootstrap實現(xiàn)后臺管理系統(tǒng)界面
這篇文章主要為大家詳細(xì)介紹了spring boot+thymeleaf+bootstrap簡單實現(xiàn)后臺管理系統(tǒng)界面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12springboot中pom.xml文件注入test測試依賴時報錯的解決
這篇文章主要介紹了springboot中pom.xml文件注入test測試依賴時報錯的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03Java微信公眾平臺開發(fā)(7) 公眾平臺測試帳號的申請
這篇文章主要為大家詳細(xì)介紹了Java微信公眾平臺開發(fā)第七步,微信公眾平臺測試帳號的申請,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04Apache?Hudi異步Clustering部署操作的掌握
這篇文章主要介紹了Apache?Hudi異步Clustering部署操作的掌握,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-03-03Mybatis?mysql模糊查詢方式(CONCAT多個字段)及bug
這篇文章主要介紹了Mybatis?mysql模糊查詢方式(CONCAT多個字段)及bug,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01Java實現(xiàn)二叉樹的建立、計算高度與遞歸輸出操作示例
這篇文章主要介紹了Java實現(xiàn)二叉樹的建立、計算高度與遞歸輸出操作,結(jié)合實例形式分析了Java二叉樹的創(chuàng)建、遍歷、計算等相關(guān)算法實現(xiàn)技巧,需要的朋友可以參考下2019-03-03