Java 中 arr.length、arr[0].length 和 arr[1].length 的区别

17 Mar 2025 | 阅读 2 分钟

Java 提供了一个名为 length 的属性,用于确定 数组的长度。每个 数组都有一个内置的 length 属性,其值就是数组的大小。大小指的是数组可以包含的元素总数。可以通过 点(.)运算符后跟数组名来调用 **length** 属性。在本节中,我们将讨论 **array.length**、**array[0].length** 和 **array[1].length** 之间的区别。

**array.length**、**array[0].length** 和 **array[1].length** 通常在块数组(多维数组)中使用。每个维度都有一个长度。例如,考虑以下数组。

arr.length, arr[0].length and arr[1].length in Java

上面的数组表示了一个块数组的表格格式,该数组包含 50 行和 70 列。假设我们需要获取索引 array[1][4] 的值,该索引处的值是 30。

**array[0]** 指的是块数组的第 0 行。而 **array[0].length** 指的是第 0 行的列数,即 70。因此,答案是 70。

**array.length:** length 属性用于查找数组的长度。

**array[0].length:** 第 0 行的列数。

**array[1].length:** 第 1 行的列数。

在 Java 中,数组是对象,但并非完全像对象。因为 Java 允许我们使用索引运算符(即使用方括号 [])。

由于数组是对象,因此它们有方法和实例变量。特别是,数组有一个名为 **length** 的公共实例变量。它决定了数组的长度。

通常,我们应该避免使用公共实例变量来提高封装性。然而,Java 数组使用了它们,所以我们也必须使用它们。

以下是如何使用 length 实例变量打印 Java 数组的方法。

考虑以下代码片段。

在上面定义的数组中,长度为 5。

让我们通过一个 Java 程序来理解 array.length、array[0].length 和 array[1].length 的概念。

MatrixDemo.java

输出

3
4
4

在上面的程序中,我们观察到 **mat.length** 是总行数。**mat[0].length** 是第 0 行的列数。**mat[1].length** 应该与 **mat[0].length** 具有相同的值。因此,它具有与第一行相同的列数。


下一话题Java 8 的未来