Java中的集合3——学生管理系统(2)

一、前言

上篇文章介绍了部分功能,本文将会实现剩余的功能:删除学生、修改学生以及查找学生

二、删除学生功能

1️⃣解题思路

  1. 定义一个带参数的方法,用来实现删除学生的功能
  2. 参数为一个集合,用来存储添加完学生的数据
  3. 键盘录入一个学号
  4. 遍历集合,查找与键盘录入相同的学号
  5. 如果在集合中能找到对应数据,就删除,并返回"删除成功"的提示语句
  6. 如果没有找到,则返回"查无此人,请重新输入"的提示语句

2️⃣代码实现

public static void removeStudent(ArrayList<student> Array){
        Scanner in = new Scanner(System.in);
        System.out.println("请输入要删除学生的学号");
        String id = in.next();
        for (int i = 0; i < Array.size(); i++) {
            student s = Array.get(i);
            if(s.getId().equals(id)){
                Array.remove(i);
                System.out.println("删除成功");
                break;
            }
            else{
                System.out.println("查无此人,请重新输入");
                break;
            }
        }

    }

三、修改学生功能

1️⃣解题思路

  1. 定义一个带参数的方法,用来实现修改学生的功能
  2. 从键盘录入要修改学生的学号 用于查找该学生的信息
  3. 录入新的学号、姓名和性别并传递给一个新的参数,以便在修改时赋值
  4. 定义一个新的类来存放刚刚录入的数据
  5. 遍历数组,找到刚刚输入的学号对应的信息
  6. 如果找得到,就修改原来的信息为刚刚新录入的信息,并返回"修改成功"的提示信息
  7. 如果找不到对应学号,就返回"查无此人,请重新输入"的提示语句

2️⃣代码实现

public static void modifyStudent(ArrayList<student> Array){
        Scanner in = new Scanner(System.in);

        System.out.println("请输入要修改学生的学号");
        String id = in.next();
        System.out.println("请输入新的姓名");
        String newName = in.next();
        System.out.println("请输入新的学号");
        String newId = in.next();
        System.out.println("请输入新的性别");
        String newGender = in.next();
        student stu = new student();
        stu.setId(newId);
        stu.setName(newName);
        stu.setGender(newGender);
        for (int i = 0; i < Array.size(); i++) {
            student s = Array.get(i);
            if(s.getId().equals(id)){
                Array.set(i,stu);
                System.out.println("修改成功");
                break;
            }
            else {
                System.out.println("查无此人,请重新输入!");
            }
        }
    }

四、查找学生功能

1️⃣解题思路

  1. 定义一个带参数的方法,用来实现查找学生的功能
  2. 键盘录入一个学生的学号
  3. 遍历集合,寻找刚刚输入的学号对应的信息
  4. 如果找得到,就输出学号对应的学生信息,并使用制表符 \t 来间隔,使得输出信息更加整齐
  5. 如果找不到,就返回"查无此人"的提示信息

2️⃣代码实现

public static void searchStudent(ArrayList<student> Array){
        System.out.println("请输入要查找学生的学号");
        Scanner in = new Scanner(System.in);
        String num = in.next();
        for (int i = 0; i < Array.size(); i++) {
            student s = Array.get(i);
            if (s.getId().equals(num)) {
                System.out.println("学号" + "\t" + "姓名" + "\t" + "性别" + "\t");
                System.out.println(s.getId() + "\t" + s.getName() + "\t" + s.getGender() + "\t");
                break;
            }
            else {
                System.out.println("查无此人!");
            }

        }
    }

五、结语

目前学生管理系统并没有登录注册和退出页面,会在下一篇中讲解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Alita11101_

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

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

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

打赏作者

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

抵扣说明:

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

余额充值