该系统实现了一个基于控制台的学生信息管理程序。1. 通过Student类封装学生信息,包含学号、姓名和年龄;2. 使用ArrayList存储学生数据;3. 提供添加、查看、删除、查询学生等功能;4. 利用Scanner接收用户输入;5. 程序以菜单形式循环运行,直至用户选择退出。核心知识点涵盖类与对象、集合、输入输出等,适合Java初学者练习基础语法与逻辑处理。
如果你是Java初学者,完成一个简单的项目能帮助你快速掌握基础语法和开发流程。下面是一个基于控制台的“学生信息管理系统”实战代码示例,使用了类、对象、集合、输入输出等核心知识点,适合初级学习者理解和练习。
功能说明
该系统支持以下基本操作:
- 添加学生信息
- 查看所有学生信息
- 根据学号删除学生
- 根据学号查询学生
- 退出系统
核心类设计
Student 类:用于封装学生的基本信息。
public class Student {
private String id;
private String name;
private int age;
public Student() {}
public Student(String id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
// Getter 和 Setter 方法
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "学号:" + id + ",姓名:" + name + ",年龄:" + age;
}
}
Main 类:包含主程序逻辑,使用 Scanner 接收用户输入,用 ArrayList 存储学生数据。
import java.util.ArrayList; import java.util.Scanner; public class Main { private static ArrayList
students = new ArrayList<>(); private static Scanner scanner = new Scanner(System.in); public static void main(String[] args) { while (true) { System.out.println("\n=== 学生信息管理系统 ==="); System.out.println("1. 添加学生"); System.out.println("2. 查看所有学生"); System.out.println("3. 删除学生"); System.out.println("4. 查询学生"); System.out.println("5. 退出"); System.out.print("请选择操作:"); int choice = scanner.nextInt(); scanner.nextLine(); // 消费换行符 switch (choice) { case 1: addStudent(); break; case 2: listStudents(); break; case 3: deleteStudent(); break; case 4: findStudent(); break; case 5: System.out.println("已退出系统!"); return; default: System.out.println("无效选择,请重新输入!"); } } } private static void addStudent() { System.out.print("请输入学号:"); String id = scanner.nextLine(); System.out.print("请输入姓名:"); String name = scanner.nextLine(); System.out.print("请输入年龄:"); int age = scanner.nextInt(); scanner.nextLine(); // 消费换行符 Student student = new Student(id, name, age); students.add(student); System.out.println("学生添加成功!"); } private static void listStudents() { if (students.isEmpty()) { System.out.println("暂无学生信息!"); } else { for (Student s : students) { System.out.println(s); } } } private static void deleteStudent() { System.out.print("请输入要删除的学生学号:"); String id = scanner.nextLine(); boolean removed = false; for (int i = 0; i < students.size(); i++) { if (students.get(i).getId().equals(id)) { students.remove(i); removed = true; System.out.println("删除成功!"); break; } } if (!removed) { System.out.println("未找到该学号的学生!"); } } private static void findStudent() { System.out.print("请输入要查询的学生学号:"); String id = scanner.nextLine(); for (Student s : students) { if (s.getId().equals(id)) { System.out.println("找到学生:" + s); return; } } System.out.println("未找到该学生!"); } }
运行效果示例
启动程序后,控制台会显示菜单:
=== 学生信息管理系统 === 1. 添加学生 2. 查看所有学生 3. 删除学生 4. 查询学生 5. 退出 请选择操作:1 请输入学号:S001 请输入姓名:张三 请输入年龄:20 学生添加成功!
扩展建议
这个项目可以进一步升级,比如:
- 加入文件读写(使用 PrintWriter / Scanner 保存到 txt 文件)
- 增加修改学生信息功能
- 使用 Map 以学号为 key 提高查询效率
- 加入输入校验(如年龄不能为负数)









