我正在编写代码以在以 n 值的形式获取用户输入时打印矩阵:假设如果 n= 3 输出:3 3 3 3 0 3 3 1 3 3 2 3 3 3 3我在行中收到 ArrayIndexOutOfBoundException: a[i][j]=n;import java.util.*;public class HelloWorld{ public static void main(String []args){ Scanner scan = new Scanner(System.in); //System.out.println("Enter n"); int n = scan.nextInt(); System.out.println(n); int a[][]= new int[n][n]; int b=0; int mid = n/2 +1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(i+j==mid) { a[i][j]=n-b; b++; } else { a[i][j]=n; } } } for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { System.out.print(a[i][j]); } System.out.println(); } }}
3 回答
叮当猫咪
TA贡献1776条经验 获得超12个赞
如果请求一个负数或一个大于或等于数组大小的索引,则 JAVA 会抛出一个 ArrayIndexOutOfBounds 异常。这与不进行绑定检查索引的 C/C++ 不同。TheArrayIndexOutOfBoundsException 是仅在运行时抛出的运行时异常。
添加回答
举报
0/150
提交
取消