基本上,用户必须指定他们想要的行数和列数[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;
}
}
}
}
行内:
for(int j=0; j < n; i++)
在j
的位置增加i
:
for(int j=0; j < n; j++)
改变这一行:
for(int j=0; j < n; **j**++)
可能是打错了
两个循环的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;
}
}
}
}
在第二个循环中,您执行i++
而不是j++
问题是您在第二个变量中增加了错误的变量:
for(int j=0; j < n; i++)
必须输入j
而不是i可以正常工作,如果你改变这个。
欢呼