简单的学生管理系统1.0

看了封神第一部,小小的调侃一下

简单的学生管理系统需要什么

  登录页面

  进入登录之后选择该如何操作增删改查

  进入查询功能,(只有查询好使用才能进行后续操作)

  进入增添功能

  进入修改功能

  进入删除功能

  中间夹杂这一些辅助函数功能

首先实现登陆操作

明确用户和登录密码(这里我们指个人),也就是说要进行匹配用户和密码是否正确,只要有一方不正确,就登录页面不能进入

代码展示

  //登录页面
    public static void login(){
        System.out.println("~~~~欢迎来到学生管理系统~~~~");
        System.out.println("请输入管理人用户名");
        String name=information();
        System.out.println("请输入管理密码");
        String password=information();
        if("封神观众".equals(name)&&"20230720".equals(password)){
          welcome();
        }
        else{
            System.out.println("登录失败,重新输入");
        }
    }

这里存在一个函数方法information(),它是定义的一个辅助即键盘输入值,只有当你输入的用户名与密码与代码里所展示的信息相匹配,你才能正式登陆成功,否则你懂的!

一个函数information()

//键盘输入值
    public static String information(){
        Scanner scanner=new Scanner(System.in);
        String message= scanner.next();
        return message;
    }

进入登录之后选择该如何操作增删改查

这里我们直接简单给出学生信息,这里的学生信息要提前写一个学生类,才能进行后面操作

代码展示学生类

public class Student1 {
    private int id;
    private String name;
    private int age;
    private int index;
    public Student1(  int id, String name, int age){

        this.id=id;
        this.name=name;
        this.age=age;
    }
    public void setId(int id) {
        this.id = id;
    }
    public int getId() {
        return id;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public int getAge() {
        return age;
    }
}

代码展示如何选择增删改查

 //进入系统方法
    public static void welcome(){
        ArrayList<Student1> arrayList=new ArrayList<>();
        arrayList.add(new Student1(1,"殷商太子殷郊",22));
        arrayList.add(new Student1(2,"周武王姬发",19));
        arrayList.add(new Student1(3,"闻太师闻仲",85));
        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("请根据序号选择下一步操作");
        //序号选择
            String number = information();
            switch (number){
                case "1":
                    getStudentList(arrayList);
                    break;
                case "2":
                    addStudentList(arrayList);
                    break;
                case "3":
                    updateStudent(arrayList);
                    break;
                case "4":
                    deleteStudent(arrayList);
                    break;
                case "5":
                    System.out.println("退出学生系统");
                    System.out.println("退出成功,拜拜");
                    System.exit(0);
                    break;
                default:
                    System.out.println("输出错误");
                    break;
            }
        }
    }

进入查询功能

代码展示

//满足查询学生列表功能
    private static void getStudentList(ArrayList<Student1> arrayList){
        System.out.println("学生人员列表为:");
        System.out.println("序号--学号--姓名--年龄");
        for (int i = 0; i <arrayList.size() ; i++) {
           int id=arrayList.get(i).getId();
           String name=arrayList.get(i).getName();
           int age=arrayList.get(i).getAge();
            System.out.println((i+1)+"-----"+id+"---"+name+"-"+age);
        }
        System.out.println("学生列表查询完毕");
    }
    

这里是按默认顺序依次查询,如果你另行辟径,想要倒序插叙,更改循环即可

进入增添功能

代码展示

 //满足添加学生功能
    public static  void addStudentList(ArrayList<Student1> arrayList){
        System.out.println("请输入学生姓名-年龄:格式为  姓名-年龄");
        String a= information();

        String[] student = a.split("-"); //[姓名,年龄]
        //学号 最大 + 1
        int number = 0;
        for (Student1 student1 : arrayList) {
            if (student1.getId() > number){
                number = student1.getId();
            }
        }
        String name = student[0];
        int age = Integer.parseInt(student[1]);
        Student1 s1 = new Student1((number + 1), name, age);
        //学生对象添加到list中
        arrayList.add(s1);
        System.out.println("学生添加完成");
        System.out.println();
        getStudentList(arrayList);
    }

注意看清楚格式是什么:姓名-年龄,中间有一个-号,如果缺少它,就会报错然后直接退出来

它这个是添加到原来顺序的最后一位的后面,而不是中间选择插入

进入修改功能

代码展示

//满足修改学生功能
    private static void updateStudent(ArrayList<Student1> arrayList) {
        getStudentList(arrayList);
        System.out.println("请选择要修改的学号");
        String number=information();
       int i = Integer.parseInt(number);
        //查看到id了 根据id查找
        int index = -1;
        for (int j = 0; j < arrayList.size(); j++) {
           if (arrayList.get(j).getId() == i){
               index = j;
          }
       }

        System.out.println("要修改的学生信息是"+arrayList.get(index));
        System.out.println("请输入修改的姓名和年龄:格式 姓名-年龄");
        String b = information();

        String[] student = b.split("-"); //[姓名,年龄]
        String name = student[0];
        int age = Integer.parseInt(student[1]);
        Student1 s1 = new Student1((index+1), name, age);
        //替换
        arrayList.set(index,s1);
        System.out.println("学生修改完成");
        System.out.println();
        getStudentList(arrayList);
    }

修改功能和删除功能都需要先找到学生信息的id,也就是它的唯一值即key,毕竟如果信息过多你选择年龄或者姓名的话会重复,当然还有你自己新添加的属性(学校,院系,专业,成绩·····),得到对应id学员信息后,你就可以在上面“为所欲为”将你所修改的信息与原有的信息直接替换就成功了

 进入删除功能

代码展示

//满足删除学生功能
    private static void deleteStudent(ArrayList<Student1> arrayList) {
        getStudentList(arrayList);
        System.out.println("请选择要删除的学号");
        String number = information();

        int i = Integer.parseInt(number);
        //获取索引
        int index = getIndex(i, arrayList);
        //删除
        arrayList.remove(index);
        System.out.println("学生删除完成");
        System.out.println();
        getStudentList(arrayList);
    }

获取索引就是要找到对应学生信息的id,这里既可以按照修改功能里面那样写,也可以专门写一个辅助getIndex(),毕竟如果相同代码过多就太繁琐了,简洁一些吧

 //获取索引方法
    public static int getIndex(int id , ArrayList<Student1> list){
        int index = -1;
        for (int j = 0; j < list.size(); j++) {
            if (list.get(j).getId() == id){
                index = j;
            }
        }
        return index;
    }

找到索引之后,将其对应学生的信息就直接删除

结果展示

登录和总页面 、查询增添修改删除

 

 总结

这是一个基于一些特定的代码而写的简单学生信息管理系统,但是增删改查的思路以及选择是大致不变的,这里我主方法没有给出,就是简单的一个在主方法里面调用login()。下次再见呐

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值