Java学生管理系统的代码怎么写

发布时间:2022-06-10 09:29:29 作者:zzz
来源:亿速云 阅读:220

Java学生管理系统的代码怎么写

学生管理系统是一个常见的项目,用于管理学生的基本信息、成绩、课程等。本文将介绍如何使用Java编写一个简单的学生管理系统。我们将使用面向对象的设计思想,通过类、对象、集合等Java特性来实现这个系统。

1. 系统需求分析

在编写代码之前,我们需要明确系统的需求。一个简单的学生管理系统通常需要具备以下功能:

  1. 添加学生信息:包括学生的姓名、学号、年龄、性别等基本信息。
  2. 删除学生信息:根据学号删除学生信息。
  3. 修改学生信息:根据学号修改学生的基本信息。
  4. 查询学生信息:根据学号查询学生的详细信息。
  5. 显示所有学生信息:显示系统中所有学生的信息。

2. 类的设计

根据需求分析,我们可以设计以下几个类:

  1. Student类:用于表示学生对象,包含学生的基本信息。
  2. StudentManagementSystem类:用于管理学生信息,提供添加、删除、修改、查询等功能。

2.1 Student类

public class Student {
    private String id;  // 学号
    private String name;  // 姓名
    private int age;  // 年龄
    private String gender;  // 性别

    // 构造方法
    public Student(String id, String name, int age, String gender) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.gender = gender;
    }

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

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    // 重写toString方法,方便打印学生信息
    @Override
    public String toString() {
        return "Student{" +
                "id='" + id + '\'' +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", gender='" + gender + '\'' +
                '}';
    }
}

2.2 StudentManagementSystem类

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

public class StudentManagementSystem {
    private List<Student> students;  // 用于存储学生信息

    // 构造方法
    public StudentManagementSystem() {
        students = new ArrayList<>();
    }

    // 添加学生信息
    public void addStudent(Student student) {
        students.add(student);
        System.out.println("学生信息添加成功!");
    }

    // 删除学生信息
    public void deleteStudent(String id) {
        Student studentToRemove = null;
        for (Student student : students) {
            if (student.getId().equals(id)) {
                studentToRemove = student;
                break;
            }
        }
        if (studentToRemove != null) {
            students.remove(studentToRemove);
            System.out.println("学生信息删除成功!");
        } else {
            System.out.println("未找到该学生信息!");
        }
    }

    // 修改学生信息
    public void updateStudent(String id, String name, int age, String gender) {
        for (Student student : students) {
            if (student.getId().equals(id)) {
                student.setName(name);
                student.setAge(age);
                student.setGender(gender);
                System.out.println("学生信息修改成功!");
                return;
            }
        }
        System.out.println("未找到该学生信息!");
    }

    // 查询学生信息
    public void queryStudent(String id) {
        for (Student student : students) {
            if (student.getId().equals(id)) {
                System.out.println(student);
                return;
            }
        }
        System.out.println("未找到该学生信息!");
    }

    // 显示所有学生信息
    public void displayAllStudents() {
        if (students.isEmpty()) {
            System.out.println("系统中暂无学生信息!");
        } else {
            for (Student student : students) {
                System.out.println(student);
            }
        }
    }

    // 主菜单
    public void showMenu() {
        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. 显示所有学生信息");
            System.out.println("0. 退出系统");
            System.out.print("请选择操作:");
            int choice = scanner.nextInt();
            scanner.nextLine();  // 清除缓冲区

            switch (choice) {
                case 1:
                    System.out.print("请输入学号:");
                    String id = scanner.nextLine();
                    System.out.print("请输入姓名:");
                    String name = scanner.nextLine();
                    System.out.print("请输入年龄:");
                    int age = scanner.nextInt();
                    scanner.nextLine();  // 清除缓冲区
                    System.out.print("请输入性别:");
                    String gender = scanner.nextLine();
                    addStudent(new Student(id, name, age, gender));
                    break;
                case 2:
                    System.out.print("请输入要删除的学生学号:");
                    String deleteId = scanner.nextLine();
                    deleteStudent(deleteId);
                    break;
                case 3:
                    System.out.print("请输入要修改的学生学号:");
                    String updateId = scanner.nextLine();
                    System.out.print("请输入新的姓名:");
                    String newName = scanner.nextLine();
                    System.out.print("请输入新的年龄:");
                    int newAge = scanner.nextInt();
                    scanner.nextLine();  // 清除缓冲区
                    System.out.print("请输入新的性别:");
                    String newGender = scanner.nextLine();
                    updateStudent(updateId, newName, newAge, newGender);
                    break;
                case 4:
                    System.out.print("请输入要查询的学生学号:");
                    String queryId = scanner.nextLine();
                    queryStudent(queryId);
                    break;
                case 5:
                    displayAllStudents();
                    break;
                case 0:
                    System.out.println("退出系统,感谢使用!");
                    return;
                default:
                    System.out.println("无效的选择,请重新输入!");
            }
        }
    }

    public static void main(String[] args) {
        StudentManagementSystem system = new StudentManagementSystem();
        system.showMenu();
    }
}

3. 代码说明

3.1 Student类

Student类用于表示一个学生对象,包含学生的学号、姓名、年龄和性别等基本信息。我们为每个属性提供了GetterSetter方法,并重写了toString方法,方便打印学生信息。

3.2 StudentManagementSystem类

StudentManagementSystem类用于管理学生信息。我们使用List<Student>来存储学生对象,并提供了添加、删除、修改、查询和显示所有学生信息的功能。

3.3 主菜单

showMenu方法提供了一个简单的文本菜单,用户可以通过输入数字选择不同的操作。我们使用Scanner类来获取用户的输入,并根据用户的选择调用相应的方法。

4. 运行效果

运行StudentManagementSystem类的main方法后,系统会显示一个菜单,用户可以根据提示进行添加、删除、修改、查询和显示学生信息的操作。

5. 总结

本文介绍了如何使用Java编写一个简单的学生管理系统。通过面向对象的设计思想,我们将学生信息抽象为Student类,并使用StudentManagementSystem类来管理这些信息。这个系统虽然简单,但涵盖了Java编程中的一些基本概念,如类、对象、集合、循环、条件判断等。读者可以根据自己的需求进一步扩展这个系统,例如增加成绩管理、课程管理等功能。

推荐阅读:
  1. 基于Java验证jwttoken代码怎么写
  2. 如何写Java代码

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java

上一篇:基于PyQt5如何完成PDF拆分功能

下一篇:Vue项目中怎么解决跨域问题

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》