在给定位置打印数组

Print array at given position

我正在尝试在给定位置打印出两个数组。

该计划分为两部分。一个要求用户在最后输入一个字符串(学生姓名)和一个整数(学生成绩),要求用户搜索输入的姓名并打印出学生姓名和成绩

到目前为止我无法打印任何内容。

这是我用于填充数组的代码...

System.out.println("Please Enter The Number Of Students In The Class!!");     
    int numberOfStudents = input.nextInt();
    String []studentNames = new String[numberOfStudents];                                         
    int [] StudentGrades = new int[numberOfStudents];
    int i;
    for (i =0; i<numberOfStudents; i++)
    {
        System.out.println("Enter Student Name!");                                  
        studentNames[i]= input.next();
        System.out.println("_________________");                                    
        System.out.println("Enter Student Grade");
        StudentGrades[i] = input.nextInt();
        System.out.println("_________________");
    }

... 这用于搜索名称:

    Scanner input = new Scanner(System.in);
    String nameInput = input.next();
    int cheak;
    cheak = 0;

    for ( String student : studentNames)

        {
            if (nameInput.equals(student))
            {
                cheak++;
            }
        }
    if (cheak !=0)
    {
        System.out.println("Name Found ");
    }
    else
    {
        System.out.println("Name Not Found");
    }

现在我想打印在搜索中输入的学生姓名和相应的年级。

我该如何完成?

尝试以下操作:

for ( String student : studentNames) {
        if (nameInput.equals(student)) {//if the student is found, stop the loop
            break;
        }
        cheak++;
    }
if (cheak != studentNames.length){
    System.out.println("Name Found ");
    System.out.println("The name is: " + studentNames[cheak]);
    System.out.println("Grade is: " + studentGrades[cheak]);
} else {
    System.out.println("Name Not Found");       
}

您只需在 studentNames 数组中记录目标名称的索引即可。 可以通过如下方式修改循环,获取cheak变量中的索引-

cheak = 0;
for ( String student : studentNames)
    {  
        if (nameInput.equals(student))
        {
            break;
        }
        cheak++;
    }
if (cheak != numberOfStudents)
{
    System.out.println("Name Found. Name = " + studentNames[cheak] + " Grade = " + StudentGrades[cheak]);
}
else
{
    System.out.println("Name Not Found");
}