基本上,用户必须指定他们想要的许多行和列的方式[n * n],然后用户将输入值,它将存储在多维数组中。我运行代码但收到错误
线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:1
在Total.main(Total.java:30)
代码:
import java.util.*;
public class Total
{
public static void main(String args[])
{
int n,value;
Scanner input = new Scanner(System.in);
System.out.println("Enter integer for row and column:");
n = input.nextInt();
int arrX[][] = new int [n][n];
for(int i=0; i < n; i++ )
{
for(int j=0; j < n; i++)
{
System.out.printf("Enter integer [%d],[%d]:",i,j);
value = input.nextInt();
arrX[i][j] = value;
}
}
}
}
答案 0 :(得分:5)
在行中:
for(int j=0; j < n; i++)
您将i
增加j
,如下所示:
for(int j=0; j < n; j++)
答案 1 :(得分:1)
更改此行:
for(int j=0; j < n; **j**++)
这可能是一个错字
答案 2 :(得分:1)
您正在两个循环中递增i
。
import java.util.*;
public class Total
{
public static void main(String args[])
{
int n,value;
Scanner input = new Scanner(System.in);
System.out.println("Enter integer for row and column:");
n = input.nextInt();
int arrX[][] = new int [n][n];
for(int i=0; i < n; i++ )
{
for(int j=0; j < n; j++)
{
System.out.printf("Enter integer [%d],[%d]:",i,j);
value = input.nextInt();
arrX[i][j] = value;
}
}
}
}
答案 3 :(得分:0)
在第二个循环中,您执行i++
而不是j++
答案 4 :(得分:0)
问题是你在第二个中增加了错误的变量:
for(int j=0; j < n; i++)
而不是我必须输入j
如果你改变这个就行得正常。
干杯