English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriales básicos de Java

control de flujo de Java

Java array

Java orientado a objetos (I)

Java orientado a objetos (II)

Java orientado a objetos (III)

Manejo de excepciones en Java

Java lista (List)

Java Queue (cola)

conjuntos de Java Map

conjuntos de Java

Java entrada/salida (I/O)

Lector de Java/Writer

otros temas de Java

Arreglos multidimensionales de Java

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,

array bidimensional

 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).

¿Cómo inicializar un array bidimensional en Java?

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.

Inicialización del array bidimensional

Ejemplo: array bidimensional

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.

Ejemplo: imprimir usando bucles2todos los elementos del array multidimensional

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中初始化三维数组?

 让我们看看如何在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数组的数组。三维数组的行也可以像二维数组一样在长度上有所变化。

示例:3维数组

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