为什么添加信息过后查询不到


/**
 * @Title:StudentMenu
 * @author:LJJ
 * @version:2.0
 * @date:2021/12/10
 */
package com.tomato.www;

import java.util.Scanner;

public class StudentMenu {

    public static void main(String[] args) {
        zero();
        studentmenu();
    }

    // 定义一个数组
    static String[][] stu = new String[10][4];
    private static String stunum;

    // 初始化数组
    private static void zero() {
        stu[0] = new String[] { "001", "张三", "21级1班", "软件技术" };
        stu[1] = new String[] { "002", "李四", "21级1班", "软件技术" };
        stu[2] = new String[] { "003", "王五", "21级1班", "软件技术" };
    }

    // 显示所有学生信息
    private static void showstudent() {
        System.out.println("学号" + "\t" + "姓名" + "\t" + "班级" + "\t" + "专业");
        for (int i = 0; i < stu.length; i++) {
            for (int j = 0; j < stu[i].length; j++) {
                if (stu[i][j] != null) {// 如果数组元素不为空,则打印出来
                    System.out.print(stu[i][j] + "\t");
                }
            }
            // 使用println()方法控制外层循环进行换行
            System.out.println("");
        }
    }

    // 选择菜单
    private static void studentmenu() {
        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("请您输入编号,进行选择");
        Scanner scanner = new Scanner(System.in);
        String input = scanner.nextLine();
        // 选择结构语句switch语句,进行选择
        switch (input) {
        case "1":
            addstudent();
            break;
        case "2":
            deletestudent();
            break;
        case "3":
            editstudent();
            break;
        case "4":
            searchstudent();
            break;
        default:
            System.out.println("您输入的编号错误,请重新输入");
            studentmenu();
            break;
        }
    }

    // 添加学生信息的菜单
    private static void addstudent() {
        int rowIndex = selectstudent();
        // 输入学生信息
        if (rowIndex < 0) {
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入添加的姓名");
            String stuname = scanner.nextLine();
            System.out.println("请输入添加的班级");
            String stuclass = scanner.nextLine();
            System.out.println("请输入添加的专业");
            String major = scanner.nextLine();
            // 用循环与条件增加信息
            for (int i = 0; i < stu.length; i++) {
                if (stu[i][0] == null) {
                    stu[i][0] = stunum;
                    stu[i][1] = stuname;
                    stu[i][2] = stuclass;
                    stu[i][3] = major;
                    System.out.println("添加成功!!!");
                    break;
                }
            }
        } else {
            System.out.println("学生学号已经存在,请重新输入!");
            studentmenu();
        }
        studentmenu();
    }

    // 删除学生信息的菜单
    private static void deletestudent() {
        Scanner scanner = new Scanner(System.in);
        int i = selectstudent();
        // 如果i>大于-1,代表学号在查询范围之内
        if (i > -1) {
            System.out.println("请确认是否删除,输入Y/N");
            String choice = scanner.nextLine();
            if (choice.equals("Y") || choice.equals("y")) {
                for (int j = 0; j < stu[i].length; j++) {
                    stu[i][j] = null;// 令查询的学号学生信息设为空
                }
                System.out.println("删除成功!");
            }
        } else {
            System.out.println("输入的学号不存在");// 输入的学号不匹配,执行
            studentmenu();
        }
        studentmenu();
    }

    // 修改学生信息的菜单
    private static void editstudent() {
        // 定义一个flag为布尔类型的变量
        boolean flag = false;
        System.out.println("请输入学号");
        Scanner scanner = new Scanner(System.in);
        String stunum = scanner.nextLine();
        // 用循环与条件查找信息
        for (int i = 0; i < stu.length; i++) {
            if (stu[i][0] != null) {
                if (stu[i][0].equals(stunum.trim())) {
                    flag = true;// 如果为flag=true,代表学号存在,即可修改
                    System.out.println(stu[i][0] + "\t" + stu[i][1] + "\t" + stu[i][2] + "\t" + stu[i][3]);
                    editTwo(i);
                }
            }
        }
        // 如果为flag=flase,代表学号不存在,即不可修改
        if (!flag) {
            System.out.println("输入的学号不存在");
            studentmenu();
        }
    }

    // 修改学生信息的主菜单
    private static void editTwo(int i) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("1、姓名");
        System.out.println("2、班级");
        System.out.println("3、专业");
        System.out.println("请您输入编号,进行修改");
        String editIndex = scanner.nextLine();
        // 选择结构语句switch语句,进行选择
        switch (editIndex) {
        case "1": {
            editOne(i, 1);
            break;
        }
        case "2": {
            editOne(i, 2);
            break;
        }
        case "3": {
            editOne(i, 3);
            break;
        }
        default:
            System.out.println("输入的修改编号不存在,请重新输入!");
            studentmenu();
            break;
        }
    }

    // 修改学生信息菜单中定义rowIndex与columnIndex
    private static void editOne(int rowIndex, int columnIndex) {
        System.out.println("请输入要修改的内容");
        Scanner scanner = new Scanner(System.in);
        String editContent = scanner.nextLine();
        // 修改学生信息菜单中将输入修改的内容赋值到数组中
        stu[rowIndex][columnIndex] = editContent;
        System.out.println("修改成功!");
        studentmenu();
    }

    // 查询学生信息菜单
    private static void searchstudent() {
        int i = selectstudent();
        // 如果i>大于-1,代表学号在查询范围之内
        if (i > -1) {
            System.out.print(stu[i][0] + "\t" + stu[i][1] + "\t" + stu[i][2] + "\t" + stu[i][3] + "\t");
        } else {
            System.out.println("输入的学号不存在");// 输入的学号不匹配,执行
        }
        studentmenu();
    }

    // 输入学生学号查询
    private static int selectstudent() {
        // 定义rowIndex为-1,代表没有数据
        int rowIndex = -1;
        System.out.println("请输入学生的学号");
        Scanner scanner = new Scanner(System.in);
        String stunum = scanner.nextLine();
        // 用循环与条件查找信息
        for (int i = 0; i < stu.length; i++) {
            if (stu[i][0] != null) {
                if (stu[i][0].equals(stunum.trim())) {
                    rowIndex = i;
                }
            }
        }
        return rowIndex;
    }
}

请问是按学号查不到吗

直接CTRL A 复制 粘贴代码过来,不然截图不好看

就是在第3张的位置的addstudent

添加了之后用学号查询不到