English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En este tutorial, aprenderemos a usar2matrices multidimensionales y3matrices multidimensionales en Java.
Antes de aprender sobre matrices multidimensionales, asegúrate de que entiendesJava数组。}}
Un array multidimensional es un array de arrays. Cada elemento de un array multidimensional es un array en sí mismo. Por ejemplo,
int[][] a = new int[3][4];
Aquí, creamos un array multidimensional llamado a. Es un array bidimensional que puede contener hasta12elementos,
Recuerda, Java utiliza un índice basado en cero, lo que significa que los índices de los arrays en Java comienzan desde 0, no desde1comienzo.
Vamos a dar otro ejemplo de array multidimensional. Esta vez crearemos un3array multidimensional. Por ejemplo,
String[][][] data = new String[3][4][2];
Aquí, data es un array tridimensional que puede contener hasta24(3*4*2elementos de tipo String).
Así es como inicializamos un array bidimensional en Java.
int[][] a = { {1, 2, 3}, {4, 5, 6, 9}, {7}, };
Como hemos visto, cada elemento de un array multidimensional es un array en sí mismo. Y, a diferencia de C / C ++Diferente, en Java, cada fila de un array multidimensional puede tener una longitud diferente.
class MultidimensionalArray { public static void main(String[] args) { //Crear un array bidimensional int[][] a = { {1, 2, 3}, {4, 5, 6, 9}, {7}, }; //Calcular la longitud de cada fila System.out.println("El1Longitud de la fila: " + a[0].length); System.out.println("El2Longitud de la fila: " + a[1].length); System.out.println("El3Longitud de la fila: " + a[2].length); } }
输出:
El1Longitud de la fila: 3 El2Longitud de la fila: 4 El3Longitud de la fila: 1
En el ejemplo anterior, creamos un array multidimensional llamado a, porque cada componente de un array multidimensional también es un array (a[0], [1] y a[2] también es un array).
Aquí, usamos la propiedad length para calcular la longitud de cada fila.
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
También podemos usarbucle for...eachpara acceder a los elementos de un array multidimensional. Por ejemplo,
class MultidimensionalArray { public static void main(String[] args) { //Crear un array bidimensional int[][] a = { {1, -2, 3}, {-4, -5, 6, 9}, {7}, }; //Primero, el bucle for...each accede a un solo array //En el array bidimensional for(int[] innerArray: a) { //El segundo bucle for...each accede a cada elemento de la fila. for(int data: innerArray) { System.out.println(data); } } } }
输出:
1 -2 3 -4 -5 6 9 7
En el ejemplo anterior, creamos un array bidimensional llamado a y luego usamos bucles for y for...each para acceder a cada elemento del array.
让我们看看如何在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数组的数组。三维数组的行也可以像二维数组一样在长度上有所变化。
class ThreeArray { public static void main(String[] args) { // 创建三维数组 int[][][] test = { { {1, -2, 3}, {2, 3, 4} }, { {-4, -5, 6, 9}, {1}, {2, 3} } }; //for..each循环迭代3d数组的元素 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