Java 多维数组
Java 多维数组
在本教程中,我们将通过示例学习使用二维数组和三维数组的Java多维数组。
在我们了解多维数组之前,请确保您了解Java数组。
多维数组是数组的数组。多维数组的每个元素都是一个数组本身。例如,
int[][] a = new int[3][4];
在这里,我们创建了一个名为 a 的多维数组 .它是一个二维数组,最多可以容纳12个元素,
<图>请记住,Java 使用从零开始的索引,即 Java 中数组的索引从 0 开始,而不是 1。
让我们再举一个多维数组的例子。这次我们将创建一个 3 维数组。例如,
String[][][] data = new String[3][4][2];
这里,数据 是一个 3d 数组,最多可容纳 24 (3*4*2) 个 String
类型的元素 .
如何在Java中初始化一个二维数组?
下面是我们如何在 Java 中初始化一个二维数组。
int[][] a = {
{1, 2, 3},
{4, 5, 6, 9},
{7},
};
正如我们所见,多维数组的每个元素本身就是一个数组。而且,与 C/C++ 不同的是,Java 中多维数组的每一行可以有不同的长度。
<图>示例:二维数组
class MultidimensionalArray {
public static void main(String[] args) {
// create a 2d array
int[][] a = {
{1, 2, 3},
{4, 5, 6, 9},
{7},
};
// calculate the length of each row
System.out.println("Length of row 1: " + a[0].length);
System.out.println("Length of row 2: " + a[1].length);
System.out.println("Length of row 3: " + a[2].length);
}
}
输出 :
Length of row 1: 3 Length of row 2: 4 Length of row 3: 1
在上面的例子中,我们创建了一个名为 a 的多维数组 .由于多维数组的每个组件也是一个数组(a[0]
, a[1]
和 a[2]
也是数组)。
在这里,我们使用 length
属性来计算每一行的长度。
示例:使用循环打印二维数组的所有元素
class MultidimensionalArray {
public static void main(String[] args) {
int[][] a = {
{1, -2, 3},
{-4, -5, 6, 9},
{7},
};
for (int i = 0; i < a.length; ++i) {
for(int j = 0; j < a[i].length; ++j) {
System.out.println(a[i][j]);
}
}
}
}
输出 :
1 -2 3 -4 -5 6 9 7
我们还可以使用 for...each 循环来访问多维数组的元素。例如,
class MultidimensionalArray {
public static void main(String[] args) {
// create a 2d array
int[][] a = {
{1, -2, 3},
{-4, -5, 6, 9},
{7},
};
// first for...each loop access the individual array
// inside the 2d array
for (int[] innerArray: a) {
// second for...each loop access each element inside the row
for(int data: innerArray) {
System.out.println(data);
}
}
}
}
输出 :
1 -2 3 -4 -5 6 9 7
在上面的例子中,我们创建了一个名为 a 的二维数组 .然后我们使用 for
循环和 for...each
循环访问数组的每个元素。
如何在Java中初始化一个3d数组?
让我们看看如何在 Java 中使用 3d 数组。我们可以初始化一个类似于 2d 数组的 3d 数组。例如,
// test is a 3d array
int[][][] test = {
{
{1, -2, 3},
{2, 3, 4}
},
{
{-4, -5, 6, 9},
{1},
{2, 3}
}
};
基本上,3d 数组是 2d 数组的数组。 3d 数组的行长度也可以变化,就像 2d 数组一样。
示例:3维数组
class ThreeArray {
public static void main(String[] args) {
// create a 3d array
int[][][] test = {
{
{1, -2, 3},
{2, 3, 4}
},
{
{-4, -5, 6, 9},
{1},
{2, 3}
}
};
// for..each loop to iterate through elements of 3d array
for (int[][] array2D: test) {
for (int[] array1D: array2D) {
for(int item: array1D) {
System.out.println(item);
}
}
}
}
}
输出 :
1 -2 3 2 3 4 -4 -5 6 9 1 2 3
java