Java 2D 数组长度

我制作了一个非常基本的 2D 数组,像这样有 3 行和 4 列。

    int [][]array = new int[3][4];

当我尝试像这样检查长度时,

    System.out.println(array.length);

我得到 3 的结果。但是,当我尝试时:

    System.out.println(array[0].length);

我得到 4 的结果。同样的事情使用array[1].length, 和array[2].length。我不确定编译器正在处理什么。谁能解释一下?


郎朗坤
浏览 149回答 3
3回答

当年话下

您可以将以下 array变量视为数组数组,它由3数组组成,每个数组包含4元素int [][]array = new int[3][4];因此,当您尝试时,您array.length会得到3第一个包含 3 个数组的数组,4每个数组都包含元素,但是当您array[0].length, array[1].length, 时array[2].length,您正在检查array变量中元素数组的长度,所有这些都为您提供4.编辑:假设您想从数组变量中取出数组array并检查长度int [] arr1 = array[0]; // arr1.length = array[0].length which is 4int [] arr2 = array[1]; // arr2.length = array[1].length which is 4int [] arr3 = array[2];  //arr3.length = array[2].length which is 4

猛跑小猪

二维数组看起来像一个矩阵,只是一个数组的数组。如果你写:System.out.println(array[0].length);会给你你的第一个数组(4)的长度,即列数。如果你写:System.out.println(array.length);会给你行数(3)的长度。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java