二维数组的数组索引超出绑定异常

时间:2018-09-16 05:44:18

标签: java arrays

我正在声明一个二维数组,其列大小为零。同时输入将使数组索引超出绑定异常。我不明白为什么?

Scanner s=new Scanner(System.in);
int arr[][]=new int[3][0];

for(int i=0;i<3;i++)
{

    for(int j=0;j<1;j++)
    {
        arr[i][j]=s.nextInt();
    }
}

3 个答案:

答案 0 :(得分:1)

请尝试:

int arr[][]=new int[3][1];

如果要使用长度为1的数组,则应将其声明为:

new int[1];

这将创建一个可以容纳一个元素的数组,索引为0。

答案 1 :(得分:0)

您的代码使用第0列,因此您需要在声明中声明一列

int[][] arr = new int[3][1];

答案 2 :(得分:0)

将j <1更改为j <0`

for(int j=0;j<0;j++)
{
    arr[i][j]=s.nextInt();
}