日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

用Java代码实现学生管理系统

發布時間:2023/12/9 windows 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用Java代码实现学生管理系统 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 學生管理系統
    • 1.1 項目演示
    • 1.2 學生管理系統實現思路
    • 1.3 定義學生類
    • 1.4 主界面的代碼編寫
    • 1.5 添加學生的代碼編寫
    • 1.6 查看學生代碼的編寫
    • 1.7 查看學生代碼的編寫升級版
    • 1.8 刪除學生的代碼編寫
    • 1.9 修改學生的代碼編寫
    • 1.10 解決刪除/修改學生學號不存在問題
    • 1.11 解決添加學生學號重復問題
    • 1.12 新增根據學生學號查詢學生信息模塊以及輸入錯誤指令后重新輸入的代碼(詳情請看1.13完整代碼)
    • 1.13 完整代碼

學生管理系統

1.1 項目演示

1.2 學生管理系統實現思路

  • 定義學生類
  • 主界面的代碼編寫
  • 添加學生的代碼編寫
  • 查看學生的代碼編寫
  • 刪除學生的的代碼編寫
  • 修改學生的代碼編寫
  • 1.3 定義學生類

    學生類:

    • Student

    成員變量:

    • 學號:sid
    • 姓名:name
    • 年齡:age
    • 居住地:address

    構造方法:

    • 無參構造
    • 帶四個參數的構造

    成員方法

    • 每個成員變量對應給出get/set方法

    1.4 主界面的代碼編寫

    思路

  • 用輸出語句完成主界面的編寫
  • 用Scanner實現鍵盤錄入數據
  • 用switch語句完成操作的選擇
  • 用循環完成再次回到主界面
  • 1.5 添加學生的代碼編寫

    思路

  • 用鍵盤錄入選擇添加學生

  • 定義一個方法,用于添加學生

  • 顯示提示信息,提示要輸入何種信息
  • 鍵盤錄入學生對象所需要的的數據
  • 創建學生對象,把鍵盤錄入的數據賦值給學生對象的成員變量
  • 將學生對象添加到集合中(保存)
  • 調用方法
  • 1.6 查看學生代碼的編寫

    思路

  • 用鍵盤錄入選擇查看所有學生信息
  • 定義一個方法,用于查看學生信息
  • 顯示表頭信息
  • 將集合中數據取出按照對應格式顯示學生信息,年齡顯示補充”歲“
  • 調用方法
  • 1.7 查看學生代碼的編寫升級版

    思考: 假如并沒有先添加學生,而是一進來就直接查看學生信息,這時候集合中是沒有數據的,控制臺就不可能有學生數據信息,表頭的信息也不應該顯示。

    思路

  • 用鍵盤錄入選擇查看所有學生信息
  • 定義一個方法,用于查看學生信息
    1. 判斷集合中是否有數據,如果沒有顯示提示信息
    2. 顯示表頭信息
    3. 將集合中數據取出按照對應格式顯示學生信息,年齡顯示補充”歲“
  • 調用方法
  • 1.8 刪除學生的代碼編寫

    思路

  • 用鍵盤錄入選擇刪除學生信息
  • 定義一個方法,用于刪除學生信息
  • 顯示提示信息
  • 鍵盤錄入要刪除的學生學號
  • 遍歷集合將對應學生對象從集合中刪除
  • 給出刪除成功提示
  • 調用方法
  • 1.9 修改學生的代碼編寫

    思路

  • 用鍵盤錄入選擇修改學生信息
  • 定義一個方法,用于修改學生信息
  • 顯示提示信息
  • 鍵盤錄入要修改的學生學號
  • 鍵盤錄入要修改的學生信息
  • 遍歷集合修改對應的學生信息
  • 給出修改成功提示
  • 調用方法
  • 1.10 解決刪除/修改學生學號不存在問題

    思路

  • 在刪除/修改學生操作前,對學號是否存在進行判斷
  • 如果不存在,顯示提示信息
  • 如果存在,執行刪除/修改操作
  • 1.11 解決添加學生學號重復問題

    思路

  • 定義一個方法,對學號是否被使用進行判斷
    • 如果與集合中的某一個學生學號相同,返回true
    • 如果都不相同,返回false
  • 在添加學生錄入學號后調用該方法
  • 如果返回true,彈出提示,重新輸入學號
  • 如果返回false,正常添加學生對象
  • 1.12 新增根據學生學號查詢學生信息模塊以及輸入錯誤指令后重新輸入的代碼(詳情請看1.13完整代碼)

    1.13 完整代碼

  • Student(學生類)
  • public class Student {private String sid;//學號private String name;//姓名private String age;//年齡private String address;//居住地public Student() {}public Student(String sid, String name, String age, String address) {this.sid = sid;this.name = name;this.age = age;this.address = address;}public String getSid() {return sid;}public void setSid(String sid) {this.sid = sid;}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;} }
  • StudentManager(學生管理系統類)
  • public class StudentManager {/** 1. 用輸出語句完成主界面的編寫* 2. 用Scanner實現鍵盤錄入數據* 3. 用switch語句完成操作的選擇* 4. 用循環完成再次回到主界面*/public static void main(String[] args) {// 創建集合對象,用于存儲學生數據ArrayList<Student> array = new ArrayList<Student>();// 用循環完成再次回到主界面while (true) {// 1. 用輸出語句完成主界面的編寫System.out.println("---------歡迎來到學生管理系統------------");System.out.println("1 添加學生");System.out.println("2 刪除學生");System.out.println("3 修改學生");System.out.println("4 根據學號查看學生信息");System.out.println("5 查看所有學生");System.out.println("6 退出");System.out.println("-------------------------------------");// 2. 用Scanner實現鍵盤錄入數據Scanner scanner = new Scanner(System.in);String line = scanner.nextLine();// 3. 用switch語句完成操作的選擇switch (line) {case "1":// System.out.println("添加學生");addStudent(array);break;case "2":// System.out.println("刪除學生");deleteStudent(array);break;case "3":// System.out.println("修改學生");updataStudent(array);break;case "4":// System.out.println("根據學號查看學生信息");findStudentBySid(array);break;case "5":// System.out.println("查看所有學生");findAllStudent(array);break;case "6":System.out.println("謝謝使用!");System.exit(0);break;default:// 輸入命令有誤時,返回開端重新輸入System.out.println("輸入命令有誤,請重新輸入!");}}}// 定義一個方法,用于添加學生信息public static void addStudent(ArrayList<Student> array) {// 用鍵盤錄入選擇添加學生,顯示提示信息,提示要輸入何種信息Scanner sc = new Scanner(System.in);// 為了讓sid在while循環外面能被訪問到,我們就把它定義在了循環外String sid;// 為了讓程序能夠回到這里,我們使用循環使用while (true) {System.out.println("請輸入學生學號:");sid = sc.nextLine();boolean flag = isUsed(array, sid);if (flag) {System.out.println("你輸入的學號已經被使用,請重新輸入");} else {break;}}System.out.println("請輸入學生姓名:");String name = sc.nextLine();System.out.println("請輸入學生年齡:");String age = sc.nextLine();System.out.println("請輸入學生居住地:");String address = sc.nextLine();// 創建學生對象,把鍵盤錄入的數據賦值給學生對象的成員變量Student s = new Student();s.setSid(sid);s.setName(name);s.setAge(age);s.setAddress(address);// 將學生對象添加到集合中(保存)array.add(s);// 給出添加成功提示System.out.println("添加學生成功");}// 定義一個方法,判斷學號是否被占用public static boolean isUsed(ArrayList<Student> array, String sid) {// 如果與集合中的某一個學生學號相同,返回true 如果都不相同,返回falseboolean flag = false;for (int i = 0; i < array.size(); i++) {Student s = array.get(i);if (s.getSid().equals(sid)) {flag = true;break;}}return flag;}// 定義一個方法,用于根據學生學號查看學生信息public static void findStudentBySid(ArrayList<Student> array) {// 用鍵盤錄入選擇添加學生,顯示提示信息,提示要輸入何種信息Scanner sc = new Scanner(System.in);// 輸入學生學號System.out.println("請輸入學生學號:");String sid = sc.nextLine();// 在根據學生學號查詢前,對學號是否存在進行判斷// 如果不存在,顯示提示信息// 如果存在,打印表頭和學生信息int index = -1;Student s = null;// 遍歷集合將對應學生對象從集合中拿出for (int i = 0; i < array.size(); i++) {s = array.get(i);if (s.getSid().equals(sid)) {index = i;break;}}if (index == -1) {System.out.println("該學號不存在,請重新輸入");} else {System.out.println("學號\t\t\t姓名\t\t年齡\t\t居住地");// 將集合中數據取出按照對應格式顯示學生信息,年齡顯示補充”歲“System.out.println(s.getSid() + "\t\t" + s.getName() + "\t\t" + s.getAge() + "歲\t\t" + s.getAddress());}}// 定義一個方法,用于查看學生信息public static void findAllStudent(ArrayList<Student> array) {// 顯示表頭信息// '\t' 其實就是tab鍵的位置if (array.size() == 0) {System.out.println("無信息,請先添加信息再查詢");// 為了不讓程序繼續往下執行return;}System.out.println("學號\t\t\t姓名\t\t年齡\t\t居住地");// 將集合中數據取出按照對應格式顯示學生信息,年齡顯示補充”歲“for (int i = 0; i < array.size(); i++) {Student s = array.get(i);System.out.println(s.getSid() + "\t\t" + s.getName() + "\t\t" + s.getAge() + "歲\t\t" + s.getAddress());}}// 定義一個方法,用于刪除學生信息public static void deleteStudent(ArrayList<Student> array) {// 鍵盤錄入要刪除的學生學號,顯示提示信息Scanner sc = new Scanner(System.in);System.out.println("請輸入要刪除的學生的學號");String sid = sc.nextLine();// 在刪除/修改學生操作前,對學號是否存在進行判斷// 如果不存在,顯示提示信息// 如果存在,執行刪除/修改操作int index = -1;// 遍歷集合將對應學生對象從集合中刪除for (int i = 0; i < array.size(); i++) {Student s = array.get(i);if (s.getSid().equals(sid)) {index = i;break;}}if (index == -1) {System.out.println("該學號不存在,請重新輸入");} else {array.remove(index);System.out.println("刪除學生成功");}}// 定義一個方法,用于修改學生信息public static void updataStudent(ArrayList<Student> array) {// 鍵盤錄入要修改的學生學號,顯示提示信息Scanner sc = new Scanner(System.in);System.out.println("請輸入要修改的學生的學號");String sid = sc.nextLine();// 在刪除/修改學生操作前,對學號是否存在進行判斷// 如果不存在,顯示提示信息// 如果存在,執行刪除/修改操作int index = -1;// 遍歷集合修改對應的學生信息for (int i = 0; i < array.size(); i++) {Student s = array.get(i);if (s.getSid().equals(sid)) {index = i;break;}}if (index == -1) {System.out.println("該學號不存在,請重新輸入");} else {for (int j = 0; j < array.size(); j++) {Student student = array.get(j);if (student.getSid().equals(sid)) {// 鍵盤錄入要修改的學生信息System.out.println("請輸入學生的新姓名");String name = sc.nextLine();System.out.println("請輸入學生的新年齡");String age = sc.nextLine();System.out.println("請輸入學生的新居住地");String address = sc.nextLine();// 創建學生對象Student s = new Student();s.setSid(sid);s.setName(name);s.setAge(age);s.setAddress(address);array.set(j, s);// 給出修改成功提示System.out.println("修改學生成功");break;}}}} }

    總結

    以上是生活随笔為你收集整理的用Java代码实现学生管理系统的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。