Curso de Java. Matrices multidimensionales.

Una matriz multidimensional en java, es realmente una matriz unidimensional cuyos lementos referencian cada uno a una o varias matrices unidimensionales más.

 

Declarar y asignar el tamaño a una matriz multidimensional.

Para crear una Matriz multidimensional se hace por ejemplo de la siguiente manera:

int [ ] [ ] notas = new int [ 2 ] [ 3 ] ;

Con esta sentencia hemos creado una matriz multidimensional de dos dimensiones. El primer corchete [ 2 ], indica el número de matrices de una sola dimensión o unidimensionales que hay, por tanto su tipo de dato es int [ ] . En este caso hay 2 matrices unidimensionales.

El segundo corchete [ 3 ], indica el número de elementos que tiene cada una de las dos matrices unidimensionales anteriores y su tipo de dato es int . Los índices de esta matriz creada quedarían de la siguiente manera:

matriz o tabla multidimensional.Curso de Java.

Aunque quizás se entiende mejor el concepto de matriz multidimensional, si lo vemos en forma de filas y columnas:
matriz o tabla multidimensional.Curso de Java.

Asignar valores a los elementos de una matriz multidimensional.

Para asignar valores a una matriz multidimensional se actúa de la misma manera que en las matrices unidimensionales, salvo que ahora serán varios los índices que intervengan. Una vez que tenemos la matriz creada, por ejemplo la matriz “notas”, actuaremos de la siguiente manera para acceder a los elementos:

notas [ 0 ] [ 0 ] = 10 ;

notas [ 1 ] [ 2 ] = 9 ;

La primera sentencia asigna el valor “10” al elemento de la matriz unidimensional (col0) con índice “0”, que esta referenciado por la matriz (fila-0).
la segunda sentencia hace lo propio asignando el valor “9” al elemento situado en la matriz unidimensional (col2) , referenciado por la matriz (fila-1).

Matriz multidimensional. Curso de Java.

Java inicializa por defecto los elementos vacios de una matriz a “0” ó, a “null” si es una matriz de objetos.

Recorrer los elementos de una matriz para asignar valores o ver su contenido.

Al igual que con las matrices simples o unidimensionales, también podemos emplear bucles for para asignar o ver los datos de una matriz multidimensional:

Asignar datos a una matriz multidimensional:

int lim_0 = notas[ 0 ].length ;
int lim_1 = notas[ 1 ].length ;


Ver datos de una matriz multidimensional:

int lim_0 = notas[ 0 ].length ;
int lim_1 = notas[ 1 ].length ;


Como veis hemos declarado dos variables lim_0 y lim_1, para saber el tamaño de cada matriz unidimensional y establecer límites a los bucles. las variables “k” y “l” representan las filas y las columnas de la matriz bidimensional. Para asignar datos a la matriz hemos utilizado la clase EntDatos y su método entero( ) para introducir números enteros por teclado. Esta clase debe de estar en el mismo paquete, donde utilicemos la llamada a la misma, o en su defecto (no aconsejable) en la clase donde se situe el programa principal (contiene el método main( )) desde donde efectuemos la llamada al método de la clase EntDatos.

Matrices tridimensionales.

Hasta ahora en esta página nos hemos centrado en trabajar con una matriz de dos dimensiones o bidimensional, compuesta de una dimensión filas ( eje y) y una dimensión columnas ( eje x). Para crear una matriz tridimensional hay que añadir un eje más (eje Z) a la síntexis de la tabla o matriz:

int [ ] [ ] [ ] cubo = new int [ 3 ] [3 ] [ 3 ] ;

La tabla podría representarse con el siguiente dibujo, donde podemos ver los índices que tendrían cada elemento de la misma:
tabla tridimensional. Curso de Java.
Para asignar valores a este tipo de matriz, por ejemplo pondriamos:

cubo [ 0 ][ 0 ][ 0 ] = 10;
cubo [ 2 ][ 2 ][ 0 ] = 20;
cubo [ 1 ][ 2 ][ 2 ] = 5 ;

tabla tridimensional. Curso de Java.
podemos utilizar también bucles anidados for para asignar y ver los valores de la matriz tridimensional después:

Asignar datos a una matriz tridimensional:

int lim_0 = cubo[ 0 ].length ;
int lim_1 = cubo[ 1 ].length ;
int lim_2 = cubo[ 2 ].length ;


Ver los datos de una matriz tridimensional:

int lim_0 = cubo[ 0 ].length ;
int lim_1 = cubo[ 1 ].length ;
int lim_2 = cubo[ 2 ].length ;


Bueno aquí finaliza la 1ª Parte del curso de Java. Hasta el momento solo hemos visto las principales herramientas ó elementos que dispone Java en su lenguaje, pero Ya dijimos que Java es un lenguaje orientado al Objeto, así que nos queda por ver lo principal del lenguaje. La 2ª Parte del curso se ocupa de ello. De momento esta en creación, ya que mi sitio es relativamente nuevo y el proceso de creación de Páginas web lleva su tiempo, más tratandose de un curso completo. Por tanto os pido que me disculpeis y os invito a ir visualizando el progreso de creación de la 2ª parte, si es que os ha gustado esta 1ª y la habeis sacado algo de provecho. En cualquier caso os dejo esta enlace donde iré posteando ejercicios progresivos y que irán abarcando distintos aspectos de la programación en Java.

¿Te ha gustado? Compártelo.

Tu comentario es importante, ¡Animate a Comentar!

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

  Acepto la política de privacidad

Información sobre protección de datos

  • Responsable: MIGUEL ANGEL SANZ
  • Fin del tratamiento: Moderar los comentarios. Responder las consultas
  • Legitimación: Tu consentimiento
  • Destinatarios 1&1 Internet España S.L.U. Politica de privacidad. https://www.ionos.es/terms-gtc//terms-privacy/.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información adicional: Más información en nuestra política de privacidad.