Java超詳細教你寫一個學籍管理系統(tǒng)案例
前言
學籍管理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學校的領(lǐng)導人和管理者來說都至關(guān)重要,有助于提高整個學校的教育水平和管理水平,減少人力資源的浪費,適應大量的學生信息變更。 本文所寫的學籍管理系統(tǒng)實現(xiàn)了學籍管理系統(tǒng)的主要功能,大家的小學期程序設(shè)計能用到的話,可以參考一下哦!當然啦,也可以在此基礎(chǔ)上不斷完善!
一、學籍管理系統(tǒng)功能介紹
1.介紹
學籍管理系統(tǒng)首先有外部的主界面展示功能,進入主界面后可以選擇想要的操作,如添加學生信息、修改學生信息、查找學生信息、刪除學生信息、查看學生信息和退出系統(tǒng)操作。
2.學籍管理系統(tǒng)的主要功能圖示
3.代碼編寫的思路
- 3.1 定義學生類
- 3.2 主界面的代碼編寫
- 3.3 添加學生的代碼編寫
- 3.4 查看學生的代碼編寫
- 3.5 刪除學生的代碼編寫
- 3.6 修改學生的代碼編寫
二、定義學生類
1.學生類名稱:
Student
2.包含的成員變量
- 學號:num
- 姓名:name
- 年齡:age
- 地址:address
3.構(gòu)造方法
無參構(gòu)造
帶四個參數(shù)的構(gòu)造
4.成員方法
每個成員變量給出對應的get/set方法
5.代碼示例
public class Student { private String num;//學生學號 private String name;//學生姓名 private String age;//學生年齡 private String address;//學生地址 public Student() { }//無參構(gòu)造 public Student(String num, String name, String age, String address) { this.num = num; this.name = name; this.age = age; this.address = address; }//帶四個參數(shù)的構(gòu)造 public String getNum() { return num; } public void setNum(String num) { this.num = num; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; }
三、主界面的代碼編寫
1.思路
- 新建一個主類(Studentdemo)
- 用輸出語句完成主界面的編寫
- 用
Scanner
實現(xiàn)鍵盤錄入數(shù)據(jù) - 用
switch
語句完成操作的選擇 - 用循環(huán)完成再次回到主界面
- 循環(huán)之中包含添加、查找、刪除、修改的方法
2.代碼示例
主類:主界面的編寫
public class Studentdemo { public static void main(String[] args){ ArrayList<Student> array=new ArrayList<>(); while(true) { System.out.println("--------學生管理系統(tǒng)---------"); System.out.println("1.添加學生"); System.out.println("2.刪除學生"); System.out.println("3.修改學生"); System.out.println("4.查看所有學生"); System.out.println("5.退出"); System.out.println("請選擇你需要的操作:"); Scanner sc = new Scanner(System.in); String line = sc.nextLine(); switch (line) { case "1": //**此處調(diào)用“添加學生方法”** break; case "2": //**此處調(diào)用“刪除學生方法”** break; case "3": //**此處調(diào)用“修改學生方法”** break; case "4": //**此處調(diào)用“查找學生方法”** break; case "5": System.out.println("謝謝使用!"); System.exit(0); } } } }
四、系統(tǒng)功能方法的實現(xiàn)
1.添加學生信息的代碼編寫
1.1 思路
鍵盤錄入選擇添加學生;
定義一個方法用于添加學生;
- 顯示提示信息
- 鍵盤錄入學生對象信息所需要的數(shù)據(jù)
- 創(chuàng)建學生對象,將錄入的數(shù)據(jù)賦值給學生對象的成員變量
- 將學生對象添加到集合中
- 給出添加成功提示
調(diào)用方法
1.2 添加學生信息的方法說明圖
1.3 代碼示例
添加學生方法
public static void Addstudent(ArrayList<Student> array){ // 定義一個方法用于添加學生; Scanner sc=new Scanner(System.in); System.out.print("請輸入學生學號:"); String num=sc.nextLine(); System.out.print("請輸入學生姓名:"); String name=sc.nextLine(); System.out.print("請輸入學生年齡:"); String age=sc.nextLine(); System.out.print("請輸入學生地址:"); String address=sc.nextLine(); //創(chuàng)建學生對象,將鍵盤錄入的數(shù)據(jù)賦值給學生對象的成員變量 Student s=new Student(); s.setNum(num); s.setName(name); s.setAge(age); s.setAddress(address); //將學生對象添加到集合中 array.add(s); //給出添加成功提示 System.out.println("添加學生成功!"); }
添加學生方法代碼寫完后,注意要在main
方法中調(diào)用:Addstudent(array);
2.查看學生信息的代碼編寫
2.1 思路
鍵盤錄入選擇查看所有學生信息;
定義一個方法,用于查看學生信息;
- 顯示表頭信息
- 將集合中數(shù)據(jù)取出按照對應格式顯示學生信息
調(diào)用方法。
2.2 查看學生信息的方法說明圖
2.3 代碼示例
查看學生方法
// 定義一個方法,用于查看學生信息; public static void Findallstudent(ArrayList<Student> array){ if(array.size()==0){ System.out.println("無信息!"); return; } // 顯示表頭信息 // 將集合中數(shù)據(jù)取出按照對應格式顯示學生信息 for(int i=0;i<array.size();i++){ Student s=array.get(i); System.out.println("學號:"+s.getNum()); System.out.println("姓名:"+s.getName()); System.out.println("年齡:"+s.getAge()); System.out.println("地址:"+s.getAddress()); System.out.println(" "); } }
查看學生方法代碼寫完后,注意要在main
方法中調(diào)用:Findallstudent(array);
3.刪除學生信息的代碼編寫
3.1 思路
鍵盤錄入要刪除的學生信息;
定義一個方法,用于刪除學生信息;
- 顯示提示信息
- 鍵盤錄入要刪除的學生學號
- 遍歷集合將對應學生對象從集合中刪除
- 給出刪除成功提示
調(diào)用方法
3.2 刪除學生信息的方法說明圖
3.3 代碼示例
刪除學生方法
// 定義一個方法,用于刪除學生信息; public static void Deletestudent(ArrayList<Student> array){ // 鍵盤錄入要刪除的學生信息,顯示提示信息 Scanner sc=new Scanner(System.in); System.out.println("請輸入要刪除學生的學號:"); String num=sc.nextLine(); int index = -1; // 遍歷集合將對應學生對象從集合中刪除 for(int i=0;i<array.size();i++){ Student s=array.get(i); if(s.getNum().equals(num)){ index = i; break; } } if(index == -1){ System.out.println("學號有誤!"); }else{ array.remove(index); System.out.println("刪除學生信息成功!"); } }
刪除學生方法代碼寫完后,注意要在main
方法中調(diào)用:Deletestudent(array);
4.修改學生的代碼編寫
4.1 思路
鍵盤錄入選擇修改的學生信息;
定義一個方法,用于修改學生信息;
- 顯示提示信息
- 鍵盤錄入要修改的學生學號
- 遍歷集合修改對應的學生信息
- 給出修改成功提示
調(diào)用方法
4.2 修改學生信息的方法說明圖
4.3 代碼示例
修改學生方法
// 定義一個方法,用于修改學生信息; public static void Updatestudent(ArrayList<Student> array){ // 鍵盤錄入選擇修改的學生信息,顯示提示信息 Scanner sc=new Scanner(System.in); System.out.print("請輸入要修改的學生學號:"); String num=sc.nextLine(); // 鍵盤錄入要修改的學生信息 System.out.print("請輸入修改后的學生姓名"); String name=sc.nextLine(); System.out.print("請輸入修改后的學生年齡"); String age=sc.nextLine(); System.out.print("請輸入修改后的學生地址"); String address=sc.nextLine(); //創(chuàng)建學生對象 Student s=new Student(); s.setNum(num); s.setName(name); s.setAge(age); s.setAddress(address); //遍歷集合修改對應的學生信息 for(int i=0;i<array.size();i++){ Student student=array.get(i); if(student.getNum().equals(num)){ array.set(i,s); break; } } //修改成功提示 System.out.println("修改成功!"); }
修改學生信息方法代碼寫完后,注意要在main
方法中調(diào)用:Updatestudent(array);
5.學號重復問題
5.1 思路
定義一個方法,對學號是否被使用進行判斷;
- 如果與集合中的某一個學生學號相同,返回true
- 如果都不相同,返回false;
在添加學生錄入學號后調(diào)用該方法
- 如果返回true,提示重新輸入學號
- 如果返回false,正常添加學生對象
5.2 學號被占用的方法說明圖
5.3 代碼示例
判斷學號是否被使用方法
// 定義一個方法,對學號是否被使用進行判斷; public static boolean Isused(ArrayList<Student> array,String num){ // 如果與集合中的某一個學生學號相同,返回true // 如果都不相同,返回false; boolean flag =false; for(int i=0;i<array.size();i++){ Student s=array.get(i); if(s.getNum().equals(num)){ flag = true; break; } } return flag; // 在添加學生錄入學號后調(diào)用該方法 // 如果返回true,提示重新輸入學號 // 如果返回false,正常添加學生對象 }
5.4 代碼示例
改進后的——添加學生信息方法
public static void Addstudent(ArrayList<Student> array){ // 定義一個方法用于添加學生; Scanner sc=new Scanner(System.in); String num; //為了讓程序回到這里,我們使用循環(huán)實現(xiàn) while(true){ System.out.print("請輸入學生學號:"); num = sc.nextLine(); boolean flag=Isused(array,num); if(flag){ System.out.println("你輸入的學號已經(jīng)被使用,請重新輸入:"); }else{ break; } } System.out.print("請輸入學生姓名:"); String name=sc.nextLine(); System.out.print("請輸入學生年齡:"); String age=sc.nextLine(); System.out.print("請輸入學生地址:"); String address=sc.nextLine(); //創(chuàng)建學生對象,將鍵盤錄入的數(shù)據(jù)賦值給學生對象的成員變量 Student s=new Student(); s.setNum(num); s.setName(name); s.setAge(age); s.setAddress(address); //將學生對象添加到集合中 array.add(s); //給出添加成功提示 System.out.println("添加學生成功!"); }
兩個方法代碼寫完后,注意要在main
方法中調(diào)用:
首先調(diào)用判斷學號被使用方法:Isused(array);
調(diào)用改進后的添加學生信息方法:Addstudent(array);
(注意:如果之前有調(diào)用了標題4中的方法,應先刪去后在調(diào)用改進后的添加學生信息方法!)
總結(jié)
文章中代碼的編寫使用的都是Java基礎(chǔ)知識,多加練習熟能生巧。
到此這篇關(guān)于Java超詳細教你寫一個學籍管理系統(tǒng)案例的文章就介紹到這了,更多相關(guān)Java 學籍管理系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring中的HandlerMapping執(zhí)行流程詳解
這篇文章主要介紹了Spring中的HandlerMapping執(zhí)行流程詳解,HandlerMapping在Spring MVC框架的jar包下面,他是處理映射器,為用戶發(fā)送的請求找到合適的Handler Adapter,它將會把請求映射為HandlerExecutionChain對象,需要的朋友可以參考下2023-08-08Spring?Security權(quán)限注解啟動及邏輯處理使用示例
這篇文章主要為大家介紹了Spring?Security權(quán)限注解啟動及邏輯處理使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07springboot基于過濾器實現(xiàn)接口請求耗時統(tǒng)計操作
這篇文章主要介紹了springboot基于過濾器實現(xiàn)接口請求耗時統(tǒng)計操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09Java基礎(chǔ)知識精通循環(huán)結(jié)構(gòu)與break及continue
循環(huán)結(jié)構(gòu)是指在程序中需要反復執(zhí)行某個功能而設(shè)置的一種程序結(jié)構(gòu)。它由循環(huán)體中的條件,判斷繼續(xù)執(zhí)行某個功能還是退出循環(huán),選擇結(jié)構(gòu)用于判斷給定的條件,根據(jù)判斷的結(jié)果判斷某些條件,根據(jù)判斷的結(jié)果來控制程序的流程2022-04-04postman中實現(xiàn)傳遞@RequestBody參數(shù)
這篇文章主要介紹了postman中實現(xiàn)傳遞@RequestBody參數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10一文詳解SpringMVC中的@RequestMapping注解
@RequestMapping是一個用于映射HTTP請求到處理方法的注解,在Spring框架中使用,它可以用于控制器類和處理方法上,用來指定處理不同URL路徑的請求,并定義請求的方法等,本文小編將給大家詳細的介紹一下SpringMVC中的@RequestMapping注解,需要的朋友可以參考下2023-08-08