Java超詳細教你寫一個學籍管理系統(tǒng)案例
前言
學籍管理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學校的領導人和管理者來說都至關重要,有助于提高整個學校的教育水平和管理水平,減少人力資源的浪費,適應大量的學生信息變更。 本文所寫的學籍管理系統(tǒng)實現(xiàn)了學籍管理系統(tǒng)的主要功能,大家的小學期程序設計能用到的話,可以參考一下哦!當然啦,也可以在此基礎上不斷完善!
一、學籍管理系統(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)用改進后的添加學生信息方法?。?/p>
總結(jié)
文章中代碼的編寫使用的都是Java基礎知識,多加練習熟能生巧。
到此這篇關于Java超詳細教你寫一個學籍管理系統(tǒng)案例的文章就介紹到這了,更多相關Java 學籍管理系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Spring中的HandlerMapping執(zhí)行流程詳解
這篇文章主要介紹了Spring中的HandlerMapping執(zhí)行流程詳解,HandlerMapping在Spring MVC框架的jar包下面,他是處理映射器,為用戶發(fā)送的請求找到合適的Handler Adapter,它將會把請求映射為HandlerExecutionChain對象,需要的朋友可以參考下2023-08-08
Spring?Security權(quán)限注解啟動及邏輯處理使用示例
這篇文章主要為大家介紹了Spring?Security權(quán)限注解啟動及邏輯處理使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07
springboot基于過濾器實現(xiàn)接口請求耗時統(tǒng)計操作
這篇文章主要介紹了springboot基于過濾器實現(xiàn)接口請求耗時統(tǒng)計操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
Java基礎知識精通循環(huán)結(jié)構(gòu)與break及continue
循環(huán)結(jié)構(gòu)是指在程序中需要反復執(zhí)行某個功能而設置的一種程序結(jié)構(gòu)。它由循環(huán)體中的條件,判斷繼續(xù)執(zhí)行某個功能還是退出循環(huán),選擇結(jié)構(gòu)用于判斷給定的條件,根據(jù)判斷的結(jié)果判斷某些條件,根據(jù)判斷的結(jié)果來控制程序的流程2022-04-04
postman中實現(xiàn)傳遞@RequestBody參數(shù)
這篇文章主要介紹了postman中實現(xiàn)傳遞@RequestBody參數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10
一文詳解SpringMVC中的@RequestMapping注解
@RequestMapping是一個用于映射HTTP請求到處理方法的注解,在Spring框架中使用,它可以用于控制器類和處理方法上,用來指定處理不同URL路徑的請求,并定義請求的方法等,本文小編將給大家詳細的介紹一下SpringMVC中的@RequestMapping注解,需要的朋友可以參考下2023-08-08

