添砖Java之路(其六)——通过集合制作的学生信息管理系统

目录

前言:

源码:


前言:

我对于集合的理解,感觉就类似于顺序表这样的数据结构,然后他存储的数据不能是基本类型,如果要用也只能用对应基本数据的包装类。

对于集合有很多方法,我的建议就是去api里面文档查看就行,没必要可以去背。

源码:

哈哈哈,这个系统太经典了,拿来练习语法再合适不过了~

实体类:

java 复制代码
public class StudentInfor {
    private String id;
    private String name;
    private int age;
    private String sex;
    private int MathScore;
    private int ChineseSocre;
    private  int EnglishScore;

    private   int arrSocre;



    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public StudentInfor() {

    }

    public StudentInfor(String id, String name, int age, String sex, int mathScore, int chineseSocre, int englishScore) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.sex = sex;
        MathScore = mathScore;
        ChineseSocre = chineseSocre;
        EnglishScore = englishScore;
        arrSocre=mathScore+chineseSocre+englishScore;
    }

    public int getArrSocre() {
        return arrSocre;
    }

    public void setArrSocre() {
            arrSocre=MathScore+EnglishScore+ChineseSocre;
    }

    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 getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public int getMathScore() {
        return MathScore;
    }

    public void setMathScore(int mathScore) {
        MathScore = mathScore;
    }

    public int getChineseSocre() {
        return ChineseSocre;
    }

    public void setChineseSocre(int chineseSocre) {
        ChineseSocre = chineseSocre;
    }

    public int getEnglishScore() {
        return EnglishScore;
    }

    public void setEnglishScore(int englishScore) {
        EnglishScore = englishScore;
    }
}

方法类:

java 复制代码
import java.util.ArrayList;
import java.util.Scanner;

public class System_Z {

    private static void SetInfor(ArrayList<StudentInfor> list)
    {
        StudentInfor student  = new StudentInfor();

        Scanner sc=new Scanner(System.in);
        System.out.println("请输入姓名->");
        student.setName(sc.next());
        System.out.println("请输入学号->");
        String id=sc.next();
        for (int i = 0; i < list.size(); i++) {
            while (id.equals(list.get(i).getId())) {
                System.out.println("已存在该学号!");
                System.out.println("请重新输入");
                id = sc.next();
            }
        }
        student.setId(id);
        System.out.println("请输入年龄->");
        student.setAge(sc.nextInt());
        System.out.println("请输入性别->");
        student.setSex(sc.next());
        System.out.println("请输入语文成绩");
        student.setChineseSocre(sc.nextInt());
        System.out.println("请输入数学成绩");
        student.setMathScore(sc.nextInt());
        System.out.println("请输入英语成绩");
        student.setEnglishScore(sc.nextInt());
        student.setArrSocre();
        list.add(student);
    }

    private  static  void PrintAllStudent(ArrayList<StudentInfor>list)
    {

            System.out.println("姓名   id           年龄   性别   语文   数学   英语   总分");
        for (int i = 0; i < list.size(); i++) {
/*            System.out.println(list.get(i).getName()+"   "+list.get(i).getId()+"   "+list.get(i).getAge()+"   "+list.get(i).getSex()
            +"    "+list.get(i).getChineseSocre()+"\t"+list.get(i).getMathScore()+"   "+list.get(i).getEnglishScore()+"  "+list.get(i).getArrSocre());*/
            System.out.printf("%-5s%-13s%-6d%-6s%-6d%-6d%-6d%-6d\n",
                    list.get(i).getName(),list.get(i).getId(),list.get(i).getAge(),list.get(i).getSex()
                    ,list.get(i).getChineseSocre(),list.get(i).getMathScore(),list.get(i).getEnglishScore()
                    ,list.get(i).getArrSocre());

        }
    }
    private  static void  Print()
    {
        System.out.println("1.录入学生信息");
        System.out.println("2.输入id查看学生信息");
        System.out.println("3.输入学生姓名查看学生信息");
        System.out.println("4.输入学号修改学生信息");
        System.out.println("5.打印全部学生信息");
        System.out.println("6.输入学号删除学生信息");
        System.out.println("0.退出");
    }

    private static void  FindByName(ArrayList<StudentInfor> list )
    {
        System.out.println("请输入要查的学生姓名");
        Scanner sc=new Scanner(System.in);
        String name=sc.next();
        int n=0;
        for (int i = 0; i < list.size(); i++) {
            if(name.equals(list.get(i).getName()))
            {
                n=1;
                System.out.println("学生姓名:"+list.get(i).getName());
                System.out.println("学生id:"+list.get(i).getId());
                System.out.println("学生年龄:"+list.get(i).getAge());
                System.out.println("学生性别:"+list.get(i).getSex());
                System.out.println("语文成绩:"+list.get(i).getChineseSocre());
                System.out.println("数学成绩:"+list.get(i).getMathScore());
                System.out.println("英语成绩:"+list.get(i).getEnglishScore());
                System.out.println("总成绩:"+list.get(i).getArrSocre());
                System.out.println();
            }
        }
    if(n==0)
    {
        System.out.println("没找到喵");
        System.out.println();
    }
    }

    private static void  FindByID(ArrayList<StudentInfor> list )
    {
        System.out.println("请输入要查的学号");
        Scanner sc=new Scanner(System.in);
        String id=sc.next();
        for (int i = 0; i < list.size(); i++) {
            if(id.equals(list.get(i).getId()))
            {
                System.out.println("学生姓名:"+list.get(i).getName());
                System.out.println("学生id:"+list.get(i).getId());
                System.out.println("学生年龄:"+list.get(i).getAge());
                System.out.println("学生性别:"+list.get(i).getSex());
                System.out.println("语文成绩:"+list.get(i).getChineseSocre());
                System.out.println("数学成绩:"+list.get(i).getMathScore());
                System.out.println("英语成绩:"+list.get(i).getEnglishScore());
                System.out.println("总成绩:"+list.get(i).getArrSocre());
                System.out.println();
                return ;
            }
        }
        System.out.println("没找到喵");
        System.out.println();
    }

    private static  void RemakeByname(ArrayList<StudentInfor>list )
    {
        System.out.println("请输入要修改学生的学号");
        Scanner sc=new Scanner(System.in);
        String id=sc.next();
        for (int i = 0; i < list.size(); i++) {
            if(id.equals(list.get(i).getId()))
            {

                System.out.println("请输入姓名->");
                list.get(i).setName(sc.next());
                System.out.println("请输入学号->");
                list.get(i).setName(sc.next());
                System.out.println("请输入年龄->");
                list.get(i).setAge(sc.nextInt());
                System.out.println("请输入性别->");
                list.get(i).setSex(sc.next());
                System.out.println("请输入语文成绩");
                list.get(i).setChineseSocre(sc.nextInt());
                System.out.println("请输入数学成绩");
                list.get(i).setMathScore(sc.nextInt());
                System.out.println("请输入英语成绩");
                list.get(i).setEnglishScore(sc.nextInt());
                list.get(i).setArrSocre();
                return ;
            }
        }
    }

    private  static void DeleteByid(ArrayList<StudentInfor>list)
    {
        System.out.println("请输入要查的学号");
        Scanner sc=new Scanner(System.in);
        String id=sc.next();
        for (int i = 0; i < list.size(); i++) {
            if(id.equals(list.get(i).getId()))
            {
                list.remove(i);
                System.out.println("删除成功!");
                return ;
            }
        }
        System.out.println("没有查找到该学生信息喵~");
    }

    private static void main(String[] args) {
        ArrayList<StudentInfor> list=new ArrayList<>();
        StudentInfor s1=new StudentInfor("2023211661","牢大",24,"男",59,89,100);
        StudentInfor s2=new StudentInfor("2023211662","蔡徐坤",25,"男",88,81,66);
        list.add(s1);
        list.add(s2);
        System.out.println("-------欢迎使用学生信息管理系统------");
        Scanner sc=new Scanner(System.in);
        int choice=100;
        while(choice!=0)
        {
            Print();
           choice = sc.nextInt();
            switch(choice)
            {
                case 1:
                    SetInfor(list);
                    break;
                case 2:
                    FindByID(list);
                    break;
                case 3:
                    FindByName(list);
                    break;
                case 4:RemakeByname(list);
                    break;
                case 5:
                    PrintAllStudent(list);
                    System.out.println();
                    break;
                case 6:
                    DeleteByid(list);
                    break;
                case 0:
                    System.out.println("欢迎下次使用喵~");
                    break;
                default:
                    System.out.println("选择错误请重新选择");
                    System.out.println();
                    break;
            }
        }
    }

}
相关推荐
Code哈哈笑2 分钟前
【Java 学习】深度剖析Java多态:从向上转型到向下转型,解锁动态绑定的奥秘,让代码更优雅灵活
java·开发语言·学习
gb42152875 分钟前
springboot中Jackson库和jsonpath库的区别和联系。
java·spring boot·后端
程序猿进阶5 分钟前
深入解析 Spring WebFlux:原理与应用
java·开发语言·后端·spring·面试·架构·springboot
qq_433618448 分钟前
shell 编程(二)
开发语言·bash·shell
zfoo-framework13 分钟前
【jenkins插件】
java
风_流沙18 分钟前
java 对ElasticSearch数据库操作封装工具类(对你是否适用嘞)
java·数据库·elasticsearch
charlie11451419122 分钟前
C++ STL CookBook
开发语言·c++·stl·c++20
袁袁袁袁满22 分钟前
100天精通Python(爬虫篇)——第113天:‌爬虫基础模块之urllib详细教程大全
开发语言·爬虫·python·网络爬虫·爬虫实战·urllib·urllib模块教程
ELI_He99929 分钟前
PHP中替换某个包或某个类
开发语言·php