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