Java: Uso matrices con dos dimensiones o más

En Java, los elementos de una matriz pueden ser cualquier tipo de objeto que desee, incluyendo otra matriz. Esto se llama una matriz bidimensional

- o (a veces) una matriz de matrices.

Dos dimensiones arrays

Para declarar una matriz bidimensional, simplemente enumera dos conjuntos de soportes vacíos, como este:

int números [] [] -

Aquí, números es una matriz bidimensional de tipo int. Ponerlo de otra forma, números es un conjunto de int matrices.

Para crear la matriz, se utiliza el nuevo longitudes de palabras clave y proporcionar para cada conjunto de soportes, como en este ejemplo:

números = new int [10] [10] -

Aquí, la primera dimensión especifica que el números matriz tiene 10 elementos. La segunda dimensión especifica que cada uno de esos elementos es en sí mismo una matriz con 10 elementos.

Para acceder a los elementos de una matriz de dos dimensiones, se utilizan dos índices. Por ejemplo:

int [5] [7] = 23853-

A menudo, anidado para bucles se utilizan para procesar los elementos de una matriz de dos dimensiones, como en este ejemplo:

for (int x = 0- x lt; 10 x ++) {for (int y = 0- y lt; 10- Y ++) {números [x] [y] = (int) (Math.random () * 100) + 1}}

Puede utilizar un inicializador de matriz con una matriz de dos dimensiones, como en este ejemplo:

miembros de cuerda [] [] = {{"Larry", "Curly", "Moe"}, {"Manny", "Moe", "Jack"}, {"Huey", "Dewey", "Louie"}} {25483.0, 22943.0, 38274.0, 33294.0}, {// 2005 24,872.0, 23,049.0, 39,002.0, 36,888.0}, {// 2006 28,492.0, 23,784.0, 42,374.0, 39,573.0}, {// 2007 31,932.0, 23,732.0, 42,943.0, 41,734.0}} - // 2008

Cuando se crea una matriz con una expresión - como new int [5] [3] - usted está especificando que cada elemento de la matriz principal es en realidad una matriz de tipo int con tres elementos. Java, sin embargo, le permite crear arrays de dos dimensiones en el que la longitud de cada elemento de la matriz principal es diferente. A veces, esto se llama un matriz escalonada porque la matriz no forma un buen rectángulo. En cambio, sus bordes son irregulares.

Las matrices con más de dos dimensiones

Java no lo limita a las matrices de dos dimensiones. Las matrices se pueden anidar dentro de matrices para tantos niveles como el programa necesita. Para declarar una matriz con más de dos dimensiones, que acaba de especificar tantos conjuntos de soportes vacíos como usted necesita. Por ejemplo:

int [] [] [] Threed = new int [3] [3] [3] -

Aquí, se crea una matriz tridimensional, con cada dimensión que tiene tres elementos. Usted puede pensar en esta matriz como un cubo. Cada elemento requiere tres índices para el acceso.

Se puede acceder a un elemento de una matriz multidimensional especificando tantos índices como las necesidades de la matriz. Por ejemplo:

Threed [0] [1] [2] = 100-

Este elemento conjuntos de los estados 2 en la columna 1 de la fila 0 a 100.

Puede inicializadores nido tan profundo como sea necesario, también. Por ejemplo:

int [] [] [] Threed = {{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}, {{10, 11, 12}, {13, 14, 15}, {16, 17, 18}}, {{19, 20, 21}, {22, 23, 24}, {25, 26, 27}}} -

Aquí, una matriz tridimensional se inicializa con los números 1 mediante 27.

También puede utilizar múltiples anidado si declaraciones para procesar una matriz con tres o más dimensiones. Aquí hay otra manera de inicializar una matriz tridimensional con los números 1 a 27:

int [] [] [] threeD2 = new int [3] [3] [3] Valor -INT = 1-for (int i = 0- i lt; 3- i ++) for (int j = 0- j lt; 3- j ++) for (int k = 0- k lt; 3- k ++) threeD2 [i] [j] [k] = Valor ++ -



» » » » Java: Uso matrices con dos dimensiones o más