我正在尝试编写一个方法,该方法使用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);
}
}
答案 0 :(得分:0)
首先 - 您没有制作名为sc的新扫描程序对象。
第二 - 未定义行和列。全球变量通常是不好的做法(参见:What kind of global variable is bad practice in java?)
此外,没有无限循环,因为每个for循环在i
到达行时结束。