方法具有无限循环

时间:2015-04-26 12:29:20

标签: java object for-loop methods java.util.scanner

我正在尝试编写一个方法,该方法使用Scanner类根据每行中的项目数填充矩阵中Number类型的对象。这就是我试图做的事情(因为它看起来包含无限循环,所以它有问题):

public void fillMatrix ( ) {
    Number n;
    ArrayList<Number> nums;
    int num1;
    System.out.println("enter number of matrix elements :");
    num1 = sc.nextInt();

    for (int i = 0; i < rows; i++) {
        nums = new ArrayList<>();

        for (int j = 0; j < cols; j++) {
            n = new Number();

            System.out.println("enter the numerator of number(" + i + "," + j + "):");
            n.setNumerator(sc.nextInt());
            System.out.println("enter the denominator of number(" + i + "," + j + "):");
            n.setDenominator(sc.nextInt());
            nums.add(n);
        }
        matrix.put(i, nums);
    }
}

1 个答案:

答案 0 :(得分:0)

首先 - 您没有制作名为sc的新扫描程序对象。

第二 - 未定义行和列。全球变量通常是不好的做法(参见:What kind of global variable is bad practice in java?

此外,没有无限循环,因为每个for循环在i到达行时结束。