java代码中的数组索引越界异常

我正在编写代码以在以 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();

         }


     }

}


繁星coding
浏览 237回答 3
3回答

叮当猫咪

如果请求一个负数或一个大于或等于数组大小的索引,则 JAVA 会抛出一个 ArrayIndexOutOfBounds 异常。这与不进行绑定检查索引的 C/C++ 不同。TheArrayIndexOutOfBoundsException 是仅在运行时抛出的运行时异常。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java