在单个循环中打印字符串和整数

Ane*_*man 1 java

对不起,如果这是一个模糊的问题,但我查了很多,并且真的坚持我的代码.

我想创建一个循环,在一行打印字符串,然后在下一行打印,我的代码是:

public class StudentResult {
    public static void main(String[] args) {
        // Creating Student Objects
        Student student1 = new Student("Bob", 45);
        Student student2 = new Student("John", 70);

        // Making Arrays for students and marks
        String[] names = {student1.getStudentName(), student2.getStudentName()};
        int[] marks = { student1.getStudentMarks(), student2.getStudentMarks() };

        // Using for loop to print both names and marks

        for (int mark : marks) {
            // THIS IS THE PART I AM STUCK WITH
            if (mark == student1.getStudentMarks()) System.out.println(names[0]);
            else if (mark == student2.getStudentMarks()) System.out.println(names[1]);

            System.out.println("The marks are " + mark);
             /* Output is :
                Bob
                The marks are 45
                John 
                The marks are 70
             */
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法在for循环后编辑If/Else语句,这样如果我添加另一个学生对象,我只需编辑我的数组,循环就可以正常工作了.

use*_*er7 5

可以使用一个编入索引的循环,而不是为每个此处循环(这被假设两个namesmarks相同长度的阵列.

for(int i = 0; i < marks.length; i++) {
    System.out.println(names[i]);
    System.out.println("The marks are " + marks[i]);
}
Run Code Online (Sandbox Code Playgroud)