java實現(xiàn)簡單的學(xué)生管理系統(tǒng)
用Java如何實現(xiàn)一個用數(shù)組作為存儲結(jié)構(gòu)的簡易的學(xué)生管理系統(tǒng)?
首先,我們定義一個student類,在其中添加私有化的成員變量,通過getter和setter方法進(jìn)行調(diào)用
public class Students { ? ? // 學(xué)號,姓名,性別,年齡,成績 ? ? private String stuNo = " "; ? ? private String stuName = " "; ? ? private String gender = " "; ? ? private int age; ? ? private int num; ? ? public String getStuNo() { ? ? ? ? return stuNo; ? ? } ? ? public void setStuNo(String stuNo) { ? ? ? ? this.stuNo = stuNo; ? ? } ? ? public String getStuName() { ? ? ? ? return stuName; ? ? } ? ? public void setStuName(String stuName) { ? ? ? ? this.stuName = stuName; ? ? } ? ? public String getGender() { ? ? ? ? return gender; ? ? } ? ? public void setGender(String gender) { ? ? ? ? this.gender = gender; ? ? } ? ? public int getAge() { ? ? ? ? return age; ? ? } ? ? public void setAge(int age) { ? ? ? ? this.age = age; ? ? } ? ? public int getNum() { ? ? ? ? return num; ? ? } ? ? public void setNum(int num) { ? ? ? ? this.num = num; ? ? } ? ? public String toString() { ? ? ? ? return "[" + stuNo + "\t|" + stuName + "\t|" + gender + "\t|" + age + "\t|" + num + "]"; ? ? } }
隨后,我們新建一個類,直接在main方法中寫學(xué)生管理系統(tǒng).學(xué)生信息管理系統(tǒng)一般要具有增刪改查四個功能,我們可以分別用方法進(jìn)行實現(xiàn),然后在主菜單switch中進(jìn)行調(diào)用。
package com.baidu.HomeWork.Stusys; import java.util.Scanner; public class Main { ? ? static int num = 0; ? ? static boolean tag = true; ? ? static boolean tag_1 = true; ? ? static Students[] stu = new Students[100]; ? ? static Scanner scan = new Scanner(System.in); ? ? public static void main(String[] args) { ? ? ? ? while (tag) { // 主菜單 ? ? ? ? ? ? System.out.println("1.增加學(xué)生數(shù)據(jù)"); ? ? ? ? ? ? System.out.println("2.刪除學(xué)生數(shù)據(jù)"); ? ? ? ? ? ? System.out.println("3.修改學(xué)生數(shù)據(jù)"); ? ? ? ? ? ? System.out.println("4.查詢學(xué)生數(shù)據(jù)"); ? ? ? ? ? ? System.out.println("5.退出學(xué)生管理系統(tǒng)"); ? ? ? ? ? ? int scan_num = scan.nextInt(); ? ? ? ? ? ? switch (scan_num) { // 主菜單選擇 ? ? ? ? ? ? case 1: ? ? ? ? ? ? ? ? add(); ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? case 2: ? ? ? ? ? ? ? ? delete(); ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? case 3: ? ? ? ? ? ? ? ? gai(); ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? case 4: ? ? ? ? ? ? ? ? cha(); ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? case 5: ? ? ? ? ? ? ? ? tag = false; ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? default: ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? } ? ? ? ? } ? ? } ? ? static void add() { // 增加學(xué)生信息 ? ? ? ? while (tag_1) { ? ? ? ? ? ? stu[num] = new Students(); ? ? ? ? ? ? System.out.println("請依次輸入學(xué)號,姓名,性別,年齡,成績"); ? ? ? ? ? ? stu[num].setStuNo(scan.next()); ? ? ? ? ? ? stu[num].setStuName(scan.next()); ? ? ? ? ? ? stu[num].setGender(scan.next()); ? ? ? ? ? ? stu[num].setAge(scan.nextInt()); ? ? ? ? ? ? stu[num].setNum(scan.nextInt()); ? ? ? ? ? ? num++; ? ? ? ? ? ? System.out.println("繼續(xù)輸入請輸入true,否則輸入false"); ? ? ? ? ? ? tag_1 = scan.nextBoolean(); ? ? ? ? } ? ? ? ? paixu(); ? ? ? ? cha(); ? ? } ? ? static void paixu() { // 對學(xué)生信息進(jìn)行排序,該方法菜單中不可選擇,但會在其他方法中調(diào)用 ? ? ? ? int l = num - 1; ? ? ? ? int temp; ? ? ? ? for (int j = 0; j < l; j++) { ? ? ? ? ? ? for (int i = 0; i < l - j; i++) { ? ? ? ? ? ? ? ? // 依次比較相鄰的兩個元素,使較大的那個向后移 ? ? ? ? ? ? ? ? if (stu[i].getNum() > stu[i + 1].getNum()) { ? ? ? ? ? ? ? ? ? ? temp = stu[i].getNum(); ? ? ? ? ? ? ? ? ? ? stu[i].setNum(stu[i + 1].getNum()); ? ? ? ? ? ? ? ? ? ? stu[i + 1].setNum(temp); ? ? ? ? ? ? ? ? } ? ? ? ? ? ? } ? ? ? ? } ? ? } ? ? static boolean kai = false; ? ? static void delete() { // 刪除學(xué)生信息 ? ? ? ? System.out.println("請輸入你要刪除的學(xué)號"); ? ? ? ? String xuehao = scan.next(); ? ? ? ? int i; ? ? ? ? for (i = 0; i < num; i++) { ? ? ? ? ? ? if (xuehao.equals(stu[i].getStuNo())) { ? ? ? ? ? ? ? ? kai = true; ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? if (kai) { ? ? ? ? ? ? for (; i < num; i++) { ? ? ? ? ? ? ? ? stu[i].setStuNo(stu[i + 1].getStuNo()); ? ? ? ? ? ? ? ? stu[i].setStuName(stu[i + 1].getStuName()); ? ? ? ? ? ? ? ? stu[i].setGender(stu[i + 1].getGender()); ? ? ? ? ? ? ? ? stu[i].setAge(stu[i + 1].getAge()); ? ? ? ? ? ? ? ? stu[i].setNum(stu[i + 1].getNum()); ? ? ? ? ? ? } ? ? ? ? } else { ? ? ? ? ? ? System.out.println("查無此人"); ? ? ? ? } ? ? ? ? num--; ? ? } ? ? static boolean gai = false; ? ? static void gai() { ? ? ? ? ? ? ? ? ? // 修改學(xué)生信息 ? ? ? ? System.out.println("請輸入你要修改的學(xué)號"); ? ? ? ? String xuehao = scan.next(); ? ? ? ? int i; ? ? ? ? for (i = 0; i < num; i++) { ? ? ? ? ? ? if (xuehao.equals(stu[i].getStuNo())) { ? ? ? ? ? ? ? ? gai = true; ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? if (gai) { ? ? ? ? ? ? System.out.println("請依次輸入信息"); ? ? ? ? ? ? stu[i].setStuNo(scan.next()); ? ? ? ? ? ? stu[i].setStuName(scan.next()); ? ? ? ? ? ? stu[i].setGender(scan.next()); ? ? ? ? ? ? stu[i].setAge(scan.nextInt()); ? ? ? ? ? ? stu[i].setNum(scan.nextInt()); ? ? ? ? } else { ? ? ? ? ? ? System.out.println("查無此人"); ? ? ? ? } ? ? ? ? paixu(); ? ? ? ? cha(); ? ? } ? ? static void cha() { ? ? ? ? ? ? ? ? ?// 遍歷學(xué)生信息并打印,取代了逐一查找學(xué)生信息 ? ? ? ? System.out.println("[學(xué)號\t|姓名 \t|性別 \t|年齡\t|成績]"); ? ? ? ? for (int i = 0; i < num; i++) { ? ? ? ? ? ? System.out.println(stu[i]); ? ? ? ? } ? ? } }
這樣一個簡單的用數(shù)組實現(xiàn)的學(xué)生系信息管理系統(tǒng)就做好了,還可以向其中添加其他的方法豐富這個系統(tǒng)或者為這個系統(tǒng)做一個界面。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Java實現(xiàn)學(xué)生管理系統(tǒng)(控制臺版本)
- Java版學(xué)生管理系統(tǒng)
- Java畢業(yè)設(shè)計實戰(zhàn)之學(xué)生管理系統(tǒng)的實現(xiàn)
- java控制臺實現(xiàn)學(xué)生管理系統(tǒng)
- Java實現(xiàn)學(xué)生管理系統(tǒng)(IO版)
- JavaSwing實現(xiàn)小型學(xué)生管理系統(tǒng)
- Java 實現(xiàn)完整功能的學(xué)生管理系統(tǒng)實例
- Java實現(xiàn)學(xué)生管理系統(tǒng)詳解
- Java實現(xiàn)學(xué)生管理系統(tǒng)詳解流程
相關(guān)文章
java文件如何統(tǒng)計字母出現(xiàn)的次數(shù)和百分比
這篇文章主要介紹了java文件如何統(tǒng)計字母出現(xiàn)的次數(shù)和百分比,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-11-11Spring之關(guān)于PropertyDescriptor的擴(kuò)展剖析
這篇文章主要介紹了Spring之關(guān)于PropertyDescriptor的擴(kuò)展剖析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07@scope("prototype") @loadbalanced注解負(fù)載均衡失效問題
這篇文章主要為大家介紹了@scope("prototype") @loadbalanced注解負(fù)載均衡失效問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02