Java学生成绩管理系统实例(ArrayList)

大家好,我是Ziph!

学生成绩管理系统实例

  1. 实现一个学生成绩管理的简单系统。要求可以添加、删除、修改、查询成绩
  2. 创建界面相关的接口:将菜单中显示的内容定义成若干字符串常量,放入一个接口Menu中以便使用

TestDemo(主类)

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

/**
 * @Author Ziph
 * @date 2020/2/19
 * @Email [email protected]
 */
public class TestDemo implements Menu {
    public static ArrayList<Student> list = null;//定义一个列表对象来保持成绩数据

    public static void main(String[] args) {
        list = new ArrayList<Student>();
        Scanner s = new Scanner(System.in);
        initData();
        //循环显示菜单
        int choice = 0;
        do {
            System.out.println(Menu.PRJNAME);
            System.out.println(Menu.OPTION1);
            System.out.println(Menu.OPTION2);
            System.out.println(Menu.OPTION3);
            System.out.println(Menu.OPTION4);
            System.out.println(Menu.OPTION5);
            System.out.println(Menu.OPTION0);
            System.out.println(Menu.OPTION7);
            System.out.print("请输入你要操作的编号:");
            choice = s.nextInt();
            switch (choice) {
                case 1:
                    add();
                    break;
                case 2:
                    delete();
                    break;
                case 3:
                    modify();
                    break;
                case 4:
                    display();
                    break;
                case 5:
                    query();
                    break;
                case 0:
                    exit();
                    break;
                default:
                    System.out.println("输入错误!");
            }
        } while (true);
    }

    //退出
    public static void exit() {
        System.exit(0);
    }

    //初始化
    public static void initData() {
        list.add(new Student("001", "Ziph", "Java-1班", 80.0, 90.0, 99.0));
        list.add(new Student("002", "Join", "Java-2班", 44.0, 66.0, 88.0));
        list.add(new Student("003", "Marry", "Java-1班", 44.0, 88.0, 77.0));
    }

    //添加
    public static void add() {
        Scanner s = new Scanner(System.in);
        System.out.print("请输入学号:");
        String stuNo = s.next();
        System.out.print("请输入姓名:");
        String stuName = s.next();
        System.out.print("请输入班级:");
        String stuClass = s.next();
        System.out.print("请输入数学成绩:");
        double math = s.nextDouble();
        System.out.print("请输入英语成绩:");
        double english = s.nextDouble();
        System.out.print("请输入计算机成绩:");
        double computer = s.nextDouble();
        Student student = new Student(stuNo, stuName, stuClass, math, english, computer);
        list.add(student);
        display();
    }

    //删除
    public static void delete() {
        Scanner s = new Scanner(System.in);
        System.out.print("请输入要删除学生的学号:");
        String stuNo = s.next();
        Iterator<Student> it = list.iterator();
        while (it.hasNext()) {
            Student student = it.next();
            if (student.getStuNo().equals(stuNo)) {
                list.remove(student);
                System.out.println("删除成功!");
                break;
            }
        }
    }

    //修改
    public static void modify() {
        Scanner s = new Scanner(System.in);
        System.out.print("请输入要修改学生的学号:");
        String stuNo = s.next();
        Iterator<Student> it = list.iterator();
        int index = 0;
        while (it.hasNext()) {
            Student student = it.next();
            if (student.getStuNo().equals(stuNo)) {
                System.out.print("原学号:" + stuNo + ",新学号:");
                String newStuNo = s.next();
                System.out.print("原姓名:" + student.getStuName() + ",新姓名:");
                String newStuName = s.next();
                System.out.print("原班级:" + student.getStuClass() + ",新班级:");
                String newStuClass = s.next();
                System.out.print("原数学成绩:" + student.getMath() + ",新数学成绩:");
                double newMath = s.nextDouble();
                System.out.print("原英语成绩:" + student.getEnglish() + ",新英语成绩:");
                double newEnglish = s.nextDouble();
                System.out.print("原计算机成绩:" + student.getComputer() + ",新计算机成绩:");
                double newComputer = s.nextDouble();
                Student newStudent = new Student(newStuNo, newStuName, newStuClass, newMath, newEnglish, newComputer);
                list.set(index, newStudent);
                display();
                break;
            }
        }
        index++;
    }

    //显示
    public static void display() {
        Iterator<Student> it = list.iterator();//迭代器
        while (it.hasNext()) {
            System.out.println(it.next());
        }
    }

    //查询
    public static void query() {
        Scanner s = new Scanner(System.in);
        System.out.print("请输入要查询学生的学号:");
        String stuNo = s.next();
        Iterator<Student> it = list.iterator();
        while (it.hasNext()) {
            Student student = it.next();
            if (student.getStuNo().equals(stuNo)) {
                System.out.println(student);
                break;
            }
        }
    }
}

Student类

/**
 * @Author Ziph
 * @date 2020/2/19
 * @Email [email protected]
 */
public class Student {
    private String stuNo;                           //学号
    private String stuName;                         //姓名
    private String stuClass;                        //班级
    private double math;                            //数学成绩
    private double english;                         //英语成绩
    private double computer;                        //计算机成绩

    public Student(String stuNo, String stuName, String stuClass, double math, double english, double computer) {
        this.stuNo = stuNo;
        this.stuName = stuName;
        this.stuClass = stuClass;
        this.math = math;
        this.english = english;
        this.computer = computer;
    }

    public Student() {
    }

    public String getStuNo() {
        return stuNo;
    }

    public void setStuNo(String stuNo) {
        this.stuNo = stuNo;
    }

    public String getStuName() {
        return stuName;
    }

    public void setStuName(String stuName) {
        this.stuName = stuName;
    }

    public String getStuClass() {
        return stuClass;
    }

    public void setStuClass(String stuClass) {
        this.stuClass = stuClass;
    }

    public double getMath() {
        return math;
    }

    public void setMath(double math) {
        this.math = math;
    }

    public double getEnglish() {
        return english;
    }

    public void setEnglish(double english) {
        this.english = english;
    }

    public double getComputer() {
        return computer;
    }

    public void setComputer(double computer) {
        this.computer = computer;
    }

    public double getSum() {
        double sum = math + english + computer;
        return sum;
    }

    public String toString() {
        return "学号:" + stuNo +
                "\t姓名:" + stuName +
                "\t班级:" + stuClass +
                "\t数学成绩:" + math +
                "\t英语成绩:" + english +
                "\t计算机成绩:" + computer +
                "\t总成绩:" + getSum();
    }
}

Menu菜单接口

/**
 * @Author Ziph
 * @date 2020/2/19
 * @Email [email protected]
 */
public interface Menu {
    //定义项目菜单所涉及到的相关字符串
    String PRJNAME = "--------学生成绩管理系统--------";
    String OPTION1 = "=1.添加学生信息";
    String OPTION2 = "=2.删除学生信息";
    String OPTION3 = "=3.修改学生信息";
    String OPTION4 = "=4.显示学生信息";
    String OPTION5 = "=5.查询学生信息";
    String OPTION0 = "=6.退出系统";
    String OPTION7 = "-------------------------------";
}

执行结果:

显示
在这里插入图片描述
删除
在这里插入图片描述
查询
在这里插入图片描述
修改
在这里插入图片描述
添加
在这里插入图片描述
退出
在这里插入图片描述

有问题请留言回复!

发布了49 篇原创文章 · 获赞 94 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_44170221/article/details/104398101