JAVA正确格式化包含数组中的成绩的成绩册

JAVA正确格式化包含数组中的成绩的成绩册,java,arrays,for-loop,methods,Java,Arrays,For Loop,Methods,我的程序基本上是一个数组形式的成绩册,值存储在该数组中。我认为最好是在我的程序运行后向您展示它的功能 正如您所看到的,它运行成功,但是我正在尝试在输入最终成绩后显示存储在数组(成绩册)中的所有元素(成绩)。因此,在这次测试中,我输入了4个等级,但我设置代码的方式是,在运行代码后,它会在输入每个等级后,而不是在输入最终等级后,根据需要输入的等级数,在等级簿中显示每个等级。这是我的密码: import java.lang.reflect.Array; import java.util.Scanner

我的程序基本上是一个数组形式的成绩册,值存储在该数组中。我认为最好是在我的程序运行后向您展示它的功能

正如您所看到的,它运行成功,但是我正在尝试在输入最终成绩后显示存储在数组(成绩册)中的所有元素(成绩)。因此,在这次测试中,我输入了4个等级,但我设置代码的方式是,在运行代码后,它会在输入每个等级后,而不是在输入最终等级后,根据需要输入的等级数,在等级簿中显示每个等级。这是我的密码:

import java.lang.reflect.Array;
import java.util.Scanner;

public class GradeBooks {

public static void main(String[] args) {

    Scanner input = new Scanner(System.in);

    gradesentered(input);

}

public static void gradesentered(Scanner input) {

    int grades = NumberReader.readPositiveInt(input, "Please enter the number of grades: ",
            "Error: Invalid data entered");

如有任何建议,将不胜感激。:)

这是正确的。只需移动printArray(mogrades);在循环之外。

谢谢你

我搬家了

System.out.println("The Grade book contains: ");
printArray(mogrades);

在for循环外部

在for循环内部调用printary()。所以每次迭代都会调用它。您希望在循环之后打印一次。因此,将printary()调用移到循环之后。@JBNizet:“在注释中应答”是正确的。正如你从这里的两个错误答案中所看到的,他们都重复了答案,但没有重复你的论证这不是最好的办法。记住,评论是“二等公民”,可能会被删除。@RadLexus你说得对,这应该是一个答案。我有时会为在如此简单的答案上获得任何代表点而感到羞愧。我知道这很愚蠢,但事实就是这样。