学生管理系统(简陋版)
·在控制台实现一个学生管理系统,实现以下功能:
--------欢迎来到学生管理系统--------
1 添加学生
2 删除学生
3 修改学生
4 查看所有学生
5 退出
请输入你的选择:
学生类:
/* * 学生类 * Alt + Insert 代码生成快捷键*/ 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 String getName() { return name; } public String getAge() { return age; } public String getAddress() { return address; } public void setSid(String sid) { this.sid = sid; } public void setName(String name) { this.name = name; } public void setAge(String age) { this.age = age; } public void setAddress(String address) { this.address = address; } }
学生管理系统:
import java.util.ArrayList; import java.util.Scanner; /* 学生管理系统 */ public class StudentManage { public static void main(String[] args) { ArrayList<Student> array = new ArrayList<>(); while (true) { 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("请输入你的选择:"); Scanner sc = new Scanner(System.in); String line = sc.nextLine(); switch (line) { case "1": addStudent(array); break; case "2": deleteStudent(array); break; case "3": editStudent(array); break; case "4": findAllStudent(array); break; case "5": System.out.println("谢谢使用"); // break; System.exit(0); // JVM退出 default: System.out.println("请输入1~5的选择:"); break; } } } // 添加学生的方法 public static void addStudent(ArrayList<Student> array) { //显示提示信息,提示用户输入信息 Scanner sc = new Scanner(System.in); 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 student = new Student(sid, name, age, address); array.add(student); System.out.println("添加学生成功!"); } //查看所有学生的方法 public static void findAllStudent(ArrayList<Student> array) { // \t是tab键的位置 if (array.size() == 0) { System.out.println("当前没有录入学生信息,请录入后再查看!"); return; } // 控制台显示表头 System.out.println("学号\t姓名\t年龄\t居住地"); for (int i = 0; i < array.size(); i++) { Student student = array.get(i); System.out.println(student.getSid() + "\t" + student.getName() + "\t" + student.getAge() + "岁\t" + student.getAddress()); } } // 删除学生信息的方法 public static void deleteStudent(ArrayList<Student> array) { Scanner sc = new Scanner(System.in); System.out.println("请输入你要删除学生的学号:"); String sid = sc.nextLine(); boolean flag = false; for (int i = 0; i < array.size(); i++) { if (array.get(i).getSid().equals(sid)) { array.remove(i); flag = true; break; } } if (!flag) { System.out.println("未找到该学号学生"); return; } System.out.println("删除成功"); } //修改学生 public static void editStudent(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 student = array.get(i); if (student.getSid().equals(sid)) { index = i; break; } } if (index == -1) { System.out.println("未找到该学号学生"); return; } System.out.println("请输入学生新姓名:"); String name = sc.nextLine(); System.out.println("请输入学生新年龄:"); String age = sc.nextLine(); System.out.println("请输入学生新地址:"); String address = sc.nextLine(); Student newStudent = new Student(sid, name, age, address); array.set(index, newStudent); System.out.println("修改学生成功"); } //判断学号是否被使用 public static boolean isUsed(ArrayList<Student> array, String sid) { boolean flag = false; for (int i = 0; i < array.size(); i++) { if (array.get(i).getSid().equals(sid)) { flag = true; } } return flag; } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?