考虑如下二维数组的初始化方式:`int[][] arr = new int[2][]; arr[0] = new int[]{1, 2}; arr[1] = new int[]{3, 4, 5};`,下列哪项关于 `arr` 数组的描述是正确的?

答案解析

选项A错误,虽然 `arr` 有两行,但是它的每一行的长度不同,第一行是2列,第二行是3列,所以不是2行2列的二维数组。选项B错误,`arr[0].length` 的值等于2,因为 `arr[0]` 对应的数组是 `{1, 2}`。选项C正确,这种初始化方式允许每一行的长度不同,在Java中称为不规则数组或锯齿数组,是正确的描述。选项D错误,`arr[1][2]` 可以访问,并且值等于5,没有超出索引范围。`arr[1]` 对应的数组是 `{3, 4, 5}`,索引2是可以访问的。`arr[1][3]`才会出现越界问题。
正确答案:C
随机推荐
开始刷题