系统功能
该学生管理系统具备以下基本功能:
添加学生:用户可以输入学生的学号、姓名和年龄,系统会将该学生的信息存储在列表中。
删除学生:用户可以通过输入学生的学号,将列表中对应的学生信息删除。
显示所有学生:系统可以输出当前列表中所有学生的详细信息,包括学号、姓名和年龄。
退出系统:用户可以选择退出系统,结束程序运行。
这个系统使用命令行界面,操作简单、功能清晰,适合对学生信息的基本管理。
代码
import java.util.ArrayList;
import java.util.Scanner;
// 学生类,包含学号、姓名和年龄属性
class Student {
private String id; // 学号
private String name; // 姓名
private int age; // 年龄
// 构造函数,用于初始化学生对象
public Student(String id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
// 获取学号
public String getId() {
return id;
}
// 获取姓名
public String getName() {
return name;
}
// 获取年龄
public int getAge() {
return age;
}
// 重写 toString 方法,便于输出学生信息
@Override
public String toString() {
return "学号: " + id + ", 姓名: " + name + ", 年龄: " + age;
}
}
// 学生管理系统类
public class StudentManagementSystem {
// 用于存储学生信息的列表
private static ArrayList<Student> studentList = new ArrayList<>();
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); // 创建扫描器对象,读取用户输入
while (true) {
// 输出系统菜单
System.out.println("\n学生管理系统:");
System.out.println("1. 添加学生");
System.out.println("2. 删除学生");
System.out.println("3. 显示所有学生");
System.out.println("4. 退出");
System.out.print("请选择操作: ");
int choice = scanner.nextInt(); // 读取用户的选择
scanner.nextLine(); // 清除输入缓冲区
// 根据用户选择执行不同的功能
switch (choice) {
case 1:
addStudent(scanner); // 添加学生
break;
case 2:
removeStudent(scanner); // 删除学生
break;
case 3:
displayStudents(); // 显示所有学生
break;
case 4:
System.out.println("退出系统");
return; // 退出程序
default:
System.out.println("无效的选择,请重新选择"); // 输入无效时提示用户
}
}
}
// 添加学生方法
private static void addStudent(Scanner scanner) {
// 提示用户输入学生信息
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);
studentList.add(student);
System.out.println("学生添加成功!");
}
// 删除学生方法
private static void removeStudent(Scanner scanner) {
// 提示用户输入要删除的学生学号
System.out.print("请输入要删除的学生学号: ");
String id = scanner.nextLine();
boolean removed = false; // 标志位,标识是否删除成功
// 遍历学生列表,查找匹配的学号
for (Student student : studentList) {
if (student.getId().equals(id)) {
studentList.remove(student); // 从列表中删除学生
System.out.println("学生删除成功!");
removed = true;
break;
}
}
// 如果没有找到对应的学号,提示用户
if (!removed) {
System.out.println("未找到该学号的学生!");
}
}
// 显示所有学生信息方法
private static void displayStudents() {
// 如果列表为空,提示用户没有学生信息
if (studentList.isEmpty()) {
System.out.println("当前没有学生信息!");
} else {
// 遍历列表并输出每个学生的信息
for (Student student : studentList) {
System.out.println(student);
}
}
}
}