作者這幾天在複習java知識,想加深一下基礎內容,就動手操作了剛入門時就開發的學生管理系統,特地把代碼與大家分享一下,需要的可以作為參考。
import java.util.Scanner;public class StudentManagementSystem { public static void main(String[] args) { // 做一個學員資訊管理系統,目前僅支援以<姓名>的方式對學員資訊進行管理(增刪改查),即管理只是學員的姓名資訊 Scanner scanner = new Scanner(System.in); boolean flage = true; while (flage) { System.out.println("請選擇需要操作的功能:\n1-添加\t2-刪除\t3-修改\t4-查詢\t5-退出"); int num = scanner.nextInt(); switch (num) { case 1: System.out.println("請輸入需要添加的名字:"); name = scanner.next(); bool = add(name); if (bool) { System.out.println("添加成功"); } else { System.out.println("添加失敗"); } break; case 2: System.out.println("請輸入需要刪除的名字:"); String name = scanner.next(); bool = delete(name); if (bool) { System.out.println("刪除成功"); } else { System.out.println("刪除失敗"); } break; case 3: System.out.println("請輸入需要修改的名字:"); name = scanner.next(); System.out.println("請輸入修改後的名字"); String newName = scanner.next(); bool = update(name, newName); if (bool) { System.out.println("修改成功"); } else { System.out.println("修改失敗"); } break; case 4: print(); break; case 5: System.out.println("歡迎下次使用,再見!"); flage = false; break; default: System.out.println("選擇錯誤,請重新輸入"); break; } } scanner.close(); } public static String name; public static boolean bool; public static String[] names = new String[3]; public static int point = 0; // 添加 public static boolean add(String name) { // 判斷合法性 if (!isOk(name)) { return false; } // 判斷是否存在 if (query(name) != -1) { System.out.println("姓名已存在"); return false; } // 擴容 if (point == names.length) { addCapacity(); } // 添加 names[point] = name; point++; return true; } // 刪除 public static boolean delete(String name) { // 判斷合法性 if (!isOk(name)) { return false; } // 判斷是否存在 int index = query(name); if (index == -1) { System.out.println("姓名不存在"); return false; } // 刪除 for (int i = index; i < point; i++) { names[i] = names[i + 1]; } point--; return true; } // 修改 public static boolean update(String name, String newName) { if (!isOk(name) || !isOk(newName)) { return false; } // 判斷是否存在 int index = query(name); if (index == -1) { System.out.println("姓名不存在"); return false; } if (query(newName) != -1) { System.out.println("姓名已存在"); return false; } // 修改 names[index] = newName; return true; } // 查詢 public static int query(String name) { for (int i = 0; i < point; i++) { if (names[i].equals(name)) { return i; } } return -1; } // 判斷合法性 public static boolean isOk(String name) { if (name.length() < 2 || name.length() > 8) { System.out.println("姓名不合法"); return false; } return true; } // 擴容 public static void addCapacity() { String[] newNames = new String[names.length * 2]; for (int i = 0; i < names.length; i++) { newNames[i] = names[i]; } names = newNames; } // 列印 public static void print() { for (int i = 0; i < point; i++) { System.out.println(names[i]); } }}
import java.util.Scanner;public class StudentManagementSystem { public static void main(String[] args) { // 做一個學員資訊管理系統,目前僅支援以<姓名>的方式對學員資訊進行管理(增刪改查),即管理只是學員的姓名資訊 Scanner scanner = new Scanner(System.in); boolean flage = true; while (flage) { System.out.println("請選擇需要操作的功能:\n1-添加\t2-刪除\t3-修改\t4-查詢\t5-退出"); int num = scanner.nextInt(); switch (num) { case 1: System.out.println("請輸入需要添加的名字:"); name = scanner.next(); bool = add(name); if (bool) { System.out.println("添加成功"); } else { System.out.println("添加失敗"); } break; case 2: System.out.println("請輸入需要刪除的名字:"); String name = scanner.next(); bool = delete(name); if (bool) { System.out.println("刪除成功"); } else { System.out.println("刪除失敗"); } break; case 3: System.out.println("請輸入需要修改的名字:"); name = scanner.next(); System.out.println("請輸入修改後的名字"); String newName = scanner.next(); bool = update(name, newName); if (bool) { System.out.println("修改成功"); } else { System.out.println("修改失敗"); } break; case 4: print(); break; case 5: System.out.println("歡迎下次使用,再見!"); flage = false; break; default: System.out.println("選擇錯誤,請重新輸入"); break; } } scanner.close(); } public static String name; public static boolean bool; public static String[] names = new String[3]; public static int point = 0; // 添加 public static boolean add(String name) { // 判斷合法性 if (!isOk(name)) { return false; } // 判斷是否存在 if (query(name) != -1) { System.out.println("姓名已存在"); return false; } // 擴容 if (point == names.length) { addCapacity(); } // 添加 names[point] = name; point++; return true; } // 刪除 public static boolean delete(String name) { // 判斷合法性 if (!isOk(name)) { return false; } // 判斷是否存在 int index = query(name); if (index == -1) { System.out.println("姓名不存在"); return false; } // 刪除 for (int i = index; i < point; i++) { names[i] = names[i + 1]; } point--; return true; } // 修改 public static boolean update(String name, String newName) { if (!isOk(name) || !isOk(newName)) { return false; } // 判斷是否存在 int index = query(name); if (index == -1) { System.out.println("姓名不存在"); return false; } if (query(newName) != -1) { System.out.println("姓名已存在"); return false; } // 修改 names[index] = newName; return true; } // 查詢 public static int query(String name) { for (int i = 0; i < point; i++) { if (names[i].equals(name)) { return i; } } return -1; } // 判斷合法性 public static boolean isOk(String name) { if (name.length() < 2 || name.length() > 8) { System.out.println("姓名不合法"); return false; } return true; } // 擴容 public static void addCapacity() { String[] newNames = new String[names.length * 2]; for (int i = 0; i < names.length; i++) { newNames[i] = names[i]; } names = newNames; } // 列印 public static void print() { for (int i = 0; i < point; i++) { System.out.println(names[i]); } }}