java 学生管理系统

[案例]学生管理系统

在一所学校中,对学生人员流动的管理是很麻烦的,本案例要求编写一个学生管理系统,实现对学生信息的添加、删除、修改和查询功能。每个功能的具体要求如下:

系统的首页:用于显示系统所有的操作,并根据用户在控制台的输入选择需要使用的功能。

查询功能:用户选择该功能后,在控制台打印所有学生的信息。

添加功能:用户选择该功能后,要求用户在控制台输入学生学号、姓名、年龄和居住地的基本信息。在输入学号时,判断学号是否被占用,如果被占用则添加失败,并给出相应提示;反之则提示添加成功。

删除功能:用户选择该功能后,提示用户在控制台输入需要删除学生的学号,如果用户输入的学号存在则提示删除成功,反之则提示删除失败。

修改功能:用户选择该功能后,提示用户在控制台输入需要修改的学生学号、姓名、年龄和居住地学生信息,并使用输入的学生学号判断是否有此人,如果有则修改原有的学生信息,反正则提示需要修改的学生信息不存在。

退出功能:用户选择该功能后,程序正常关闭。

本案例要求使用list集合存储自定义的对象,使用list集合的中常用方法实现相关的操作。

import java.util.ArrayList;
import java.util.Scanner;

public class StudentManagementSystem {
    public static void main(String[] args) {
        ArrayList<Student> students = new ArrayList<>();
        Scanner scanner = new Scanner(System.in);
        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. 退出系统");
            int choice = scanner.nextInt();
            switch (choice) {
                case 1:
                    queryAllStudents(students);
                    break;
                case 2:
                    addNewStudent(students, scanner);
                    break;
                case 3:
                    deleteStudent(students, scanner);
                    break;
                case 4:
                    modifyStudent(students, scanner);
                    break;
                case 5:
                    System.out.println("感谢您使用本系统!");
                    return;
                default:
                    System.out.println("无效选项,请重新输入!");
            }
        }
    }

    private static void queryAllStudents(ArrayList<Student> students) {
        if (students.isEmpty()) {
            System.out.println("当前没有任何学生信息!");
        } else {
            for (Student student : students) {
                System.out.println(student);
            }
        }
    }

    private static void addNewStudent(ArrayList<Student> students, Scanner scanner) {
        System.out.print("请输入新学生的学号:");
        String id = scanner.next();
        for (Student student : students) {
            if (student.getId().equals(id)) {
                System.out.println("该学号已经被占用,请重新输入!");
                return;
            }
        }
        System.out.print("请输入新学生的姓名:");
        String name = scanner.next();
        System.out.print("请输入新学生的年龄:");
        int age = scanner.nextInt();
        System.out.print("请输入新学生的居住地:");
        String address = scanner.next();
        Student newStudent = new Student(id, name, age, address);
        students.add(newStudent);
        System.out.println("添加成功!");
    }

    private static void deleteStudent(ArrayList<Student> students, Scanner scanner) {
 System.out.print("请输入需要删除的学生的学号:");
        String id = scanner.next();
        boolean found = false;
        for (int i = 0; i < students.size(); i++) {
            Student student = students.get(i);
            if (student.getId().equals(id)) {
                students.remove(i);
                found = true;
                break;
            }
        }
        if (found) {
            System.out.println("删除成功!");
        } else {
            System.out.println("该学号不存在,请重新输入!");
        }
    }

    private static void modifyStudent(ArrayList<Student> students, Scanner scanner) {
        System.out.print("请输入需要修改的学生的学号:");
        String id = scanner.next();
        boolean found = false;
        for (Student student : students) {
            if (student.getId().equals(id)) {
                System.out.print("请输入新的学生姓名:");
                String name = scanner.next();
                System.out.print("请输入新的学生年龄:");
                int age = scanner.nextInt();
                System.out.print("请输入新的学生居住地:");
                String address = scanner.next();
                student.setName(name);
                student.setAge(age);
                student.setAddress(address);
                found = true;
                break;
            }
        }
        if (found) {
            System.out.println("修改成功!");
        } else {
            System.out.println("该学号不存在,请重新输入!");
        }
    }
}

class Student {
    private String id;
    private String name;
    private int age;
    private String address;

    public Student(String id, String name, int age, String address) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.address = address;
    }

    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;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    @Override
    public String toString() {
        return "学号:" + id + ",姓名:" + name + ",年龄:" + age + ",居住地:" + address;
    }
}

猜你喜欢

转载自blog.csdn.net/m0_61594817/article/details/129778302