Home > Java > javaTutorial > Detailed explanation of implementation of Java writing console student status management system

Detailed explanation of implementation of Java writing console student status management system

王林
Release: 2023-04-20 16:58:09
forward
1669 people have browsed it

Key technologies: Looping, switch condition judgment, object creation, ArrayList() dynamic array or collection, private

System functions:

1. Add students (student ID, name, age, place of residence) and traverse based on student ID. If the student ID already exists, re-enter it
2. Modify students based on student ID. Enter the required To modify the student's student ID, re-enter the name, age, and residence in sequence. If the student ID is entered incorrectly, you will be prompted to re-enter
3. Deleting students will be judged based on the student ID. If the student ID does not exist, a prompt will be prompted; If the number exists, delete all the information contained in the changed student number
4. View all student information and use loop traversal
5. Exit the program. If you do not choose, the program will return to the main page

Create student class

package student_status_management_system;

public class Student {
    private String student_number;
    private String name;
    private String age;
    private String address;

    public Student() {
    }

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

    public String getStudent_number() {
        return student_number;
    }

    public void setStudent_number(String student_number) {
        this.student_number = student_number;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getAddress() {
        return address;
    }

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

Student ID duplicate problem

public static boolean repetition(ArrayList<Student>array,String studentnumber){
        boolean flag = false;
        for (int i = 0;i<array.size();i++){
            Student s = array.get(i);
            if (s.getStudent_number().equals(studentnumber)){
                flag = true;
                break;
            }
        }

        return flag;
    }
Copy after login

Add student

public static void addStudent(ArrayList<Student> array) {

        String studentnumber;
        Scanner sc = new Scanner(System.in);

        while (true) {
            System.out.println("请输入学生学号:");
             studentnumber = sc.nextLine();

            boolean flag = repetition(array, studentnumber);
            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 s = new Student();
        s.setStudent_number(studentnumber);
        s.setName(name);
        s.setAge(age);
        s.setAddress(address);

        //将信息添加到集合
        array.add(s);
        System.out.println("添加成功!");

    }
Copy after login

Modify student information

public static void updateStudent(ArrayList<Student> array) {

        int index = -1;


        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你要修改的学生的学号:");
        String id = sc.nextLine();

        for (int i = 0; i < array.size(); i++) {
            Student student = array.get(i);
            if (student.getStudent_number().equals(id)) {
                index = i;

                break;
            }
        }

        if (index == -1) {
            System.out.println("该学号不存在!");
        } else {

            System.out.println("请输入新的学生姓名:");
            String name = sc.nextLine();

            System.out.println("请输入新的学生年龄:");
            String age = sc.nextLine();

            System.out.println("请输入新的学生居住地:");
            String address = sc.nextLine();

            Student s = new Student();

            s.setStudent_number(id);
            s.setName(name);
            s.setAge(age);
            s.setAddress(address);

            array.set(index, s);
            System.out.println("修改成功!");
        }

    }
Copy after login

Delete students

public static void deleteStudent(ArrayList<Student> array) {

        int index = -1; //定义索引
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你要删除的学生的学号:");
        String id = sc.nextLine();

        for (int i = 0; i < array.size(); i++) {
            Student s = array.get(i);
            if (s.getStudent_number().equals(id)) {
                index = i;
                break;
            }


        }

        if (index == -1) {
            System.out.println("该学号不存在!");
        } else {
            array.remove(index);
            System.out.println("删除成功!");
        }

    }
Copy after login

View all students

public static void findAllStudent(ArrayList<Student> array) {
        //显示表头
        if (array.size() == 0) {
            System.out.println("你还没有输入信息!");
            return;//阻止程序往下执行
        }
        System.out.println("学号\t\t\t\t姓名\t\t年龄\t\t\t居住地");
        for (int i = 0; i < array.size(); i++) {
            Student s = array.get(i);
            System.out.println(s.getStudent_number() + "\t\t" + s.getName() + "\t\t" + s.getAge() + "岁" + "\t\t" + s.getAddress());
        }
    }
Copy after login

main method

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 退出系统");
            //主界面
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入你要进行的操作(数字序号):");
            String line = sc.nextLine();

            switch (line) {
                case "1":
                    addStudent(array);
                    break;
                case "2":
                    updateStudent(array);
                    break;
                case "3":
                    deleteStudent(array);
                    break;

                case "4":
                    findAllStudent(array);
                    break;

                case "5":
                    System.out.println("再见!");
                    System.exit(0);//JVM退出


            }

        }
    }
Copy after login

Effect demonstration

Add students

Detailed explanation of implementation of Java writing console student status management system

Detailed explanation of implementation of Java writing console student status management system

## Modify students

Detailed explanation of implementation of Java writing console student status management system

Detailed explanation of implementation of Java writing console student status management system

Detailed explanation of implementation of Java writing console student status management system##Delete students

Detailed explanation of implementation of Java writing console student status management system

Detailed explanation of implementation of Java writing console student status management systemExit the program

Detailed explanation of implementation of Java writing console student status management systemView students without adding student information

The above is the detailed content of Detailed explanation of implementation of Java writing console student status management system. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:yisu.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template