Java实现:学生管理系统

本文介绍了一个基于数组实现的学生管理系统的设计与实现过程。系统包括学生信息的增删查改等功能,通过Student类定义学生属性,StudentMain类提供用户交互界面,而StudentAll类负责核心业务逻辑,如保存、查询、更新和删除学生信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学生管理系统

思路:使用数组来完成

1.Student.java类

public class Student {
    //学生学号
    private String stuNum;
    //学生姓名
    private String name;
    //学生宿舍号
    private String domNum;
    //学生成绩
    private int grade;
    public String getStuNum() {
        return stuNum;
    }
    public void setStuNum(String stuNum) {
        this.stuNum = stuNum;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getDomNum() {
        return domNum;
    }
    public void setDomNum(String domNum) {
        this.domNum = domNum;
    }
    public int getGrade() {
        return grade;
    }
    public void setGrade(int grade) {
        this.grade = grade;
    }
    public String getMessage() {
        String message = "学生学号:"+this.stuNum+"学生姓名:"+"学生宿舍号"+this.domNum+this.name+"学生成绩:"+this.grade;
        return message;
    }
    public Student(String stuNum,String name,String domNum,int grade) {
        this.stuNum = stuNum;
        this.name = name;
        this.domNum = domNum;
        this.grade = grade;
    }
    public Student(){
      
    }
}

2.StudentMain.java类

import java.util.Scanner;
public class StudentMain {
    //使用数组来完成
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入学生总人数");
        int count = input.nextInt();
        //创建数组
        Student[] students = new Student[count];       
        while(true) {
            //1.新增一名学生 2.根据学号查询学生 3.根据学号修改学生 4. 根据学号删除一名学生 5. 查看所有学生  其他.退出
            System.out.println("*********************");
            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("其他.退出");
            System.out.println("*********************");
            System.out.println("请选择操作");
            int x = input.nextInt();
            switch(x) {
            case 1:{               
                System.out.print("请输入学生学号:");
                String stuNum = input.next();
                System.out.print("请输入学生姓名:");
                String name = input.next();
                System.out.print("请输入学生宿舍号:");
                String domNum = input.next();
                System.out.print("请输入学生成绩:");
                int grade = input.nextInt();
                Student student = new Student(stuNum,name,domNum,grade);
                students=StudentAll.save(student, students);
                break;
            }
            case 2:{
                System.out.print("请输入学生学号:");
                String stuNum = input.next();
                System.out.println(StudentAll.getStudent(stuNum, students));               
                break;               
            }
            case 3:{
                System.out.println("请输入要修改的学生学号");
                String stuNum = input.next();
                System.out.print("请输入学生姓名:");
                String name = input.next();
                System.out.print("请输入学生宿舍号:");
                String domNum = input.next();
                System.out.print("请输入学生成绩:");
                int grade = input.nextInt();
                Student student = new Student(stuNum,name,domNum,grade);
                students = StudentAll.update(stuNum, student, students);
                break;               
            }               
            case 4:{
                System.out.println("请输入学生的学号");
                String stuNum = input.next();
                students = StudentAll.delStudent(stuNum,students);
                break;               
            }
            case 5:{
                StudentAll.getStudentAll(students);
                break;
            }   
            default:{
                System.exit(0);
                break;
            }   
            }
        }
    }
}

3.StudentAll.java类


public class StudentAll {
    public static Student[] save(Student student, Student[] students) {
        //先查询是否有这个 学生的学号
        boolean fal=checkSid(student.getStuNum(), students);
        if(fal) {
            System.out.println("该学生的学号已存在,请重新输入");
            return students;
        }
        for(int i = 0;i < students.length;i++) {
            if(students[i]==null) {
                students[i] = student;
                break;
            }
        }
        return students;
    }
    public static String getStudent(String stuNum,Student[] students) {
        Student s = null;
        for (Student student : students) {
            if(student!=null&&student.getStuNum().equals(stuNum)) {
                s=student;
            }
        }
        String message = s == null?"error:该学号不存在请重新输入":s.getMessage();
        return message;
    }
    public static Student[] update(String stuNum,Student student,Student[] students) {
        //先检查是否有这个学生的学号
        boolean fal = checkSid(stuNum,students);
        if(!fal) {
            System.out.println("请输入正确的学生学号");
            return students;
        }
        for(int i = 0;i < students.length;i++) {
            if(students[i] != null && students[i].getStuNum().equals(stuNum)) {
                students[i] = student;
            }
        }
        return students;
    }
    public static Student[] delStudent(String stuNum,Student[] students) {
        //先检查是否有这个学生的学号
        boolean fal = checkSid(stuNum,students);
        if(!fal) {
            System.out.println("请输入正确的学生学号");
            return students;
        }
        for(int i = 0;i < students.length;i++) {
            if(students[i] != null && students[i].getStuNum().equals(stuNum)) {
                students[i] = null;
            }
        }
        return students;
    }
    public static void getStudentAll(Student[] students) {
        for(Student student : students) {
            if(student != null) {
                System.out.println(student.getMessage());
            }
        }
    }
    public static boolean checkSid(String stuNum,Student[] students) {
        boolean fal = false;
        //先检查是否有这个
        String message = getStudent(stuNum,students);
        //判断是否包含 error 有则没有此学生学号
        if(!message.contains("error")) {
            fal = true;
        }
        return fal;
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮皮攻城狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值