Matrices en Java ✅
Dentro de los fundamentos de programación nos encontraremos con las matrices las cuales son arreglos bidimensionales que nos ayudan a almacenar datos en forma de tabla o matriz, se dice que es un arreglo bidimensional porque contamos con filas y columnas, las cuales tienen un índice para cada una de las dimensiones. Cuando creamos una indicamos el tipo de dato, por lo que solo va a almacenar valores correspondientes al tipo de dato que se indicó en la creación de la matriz.
¿CÓMO CREAR UNA MATRIZ EN JAVA?
En Java la creación de matrices sigue la siguiente estructura:
//tipoDato nombre [][] = new tipoDato[filas][columnas];
//ejemplo
int matrizNumeros [][] = new int [4][4];
En el ejemplo podemos ver que en tipoDato colocamos int por lo que solamente va almacenar números enteros dentro de la matriz, en nombre le colocamos matrizNumeros, con este nombre nos podemos referir a la matriz, seguido colocamos la palabra reservada new y volvemos a colocar el tipo de dato int para finalmente colocar las dimensiones, en este caso matrizNumeros es de 4x4 esto quiere decir que va a tener 4 filas (horizontal) y 4 columnas (vertical).
En estos momentos nuestra matriz está vacía, esto quiere decir que si recorremos la matriz solo vamos a encontrar 0 (valor por defecto del tipo de dato int) en cada una de las posiciones de matrizNumeros.
También podemos crear una matriz indicando los valores desde la creación de la matriz de la siguiente manera:
/*
matriz 3x2
-2 3
-5 1
0 -6
*/
int matriz[][] = {{-2, 3}, {-5, 1}, {0, -6}};
De esta forma podemos colocar los valores dentro de la matriz desde un inicio, en este caso corresponde a una matriz de 3 filas y 2 columnas, para indicar los valores lo hacemos después del = y usamos { } , dentro vamos a indicar la cantidad de filas con la correspondiente cantidad de columnas que en este caso corresponde a {-2, 3}, {-5, 1}, {0, -6}.
No hay que olvidar que las matrices funcionan con índices por lo que tenemos ubicaciones de la fila y columna. Los índices empiezan desde el 0, entonces -2 es la posición matriz [0][0], esto quiere decir que está en la fila 0 columna 0, 3 es la posición matriz [0]1], esto quiere decir que está en la fila 0 columna 1, -5 es la posición matriz [1][0], esto quiere decir que está en la fila 1 columna 0, 1 es la posición matriz [1][1], esto quiere decir que está en la fila 1 columna 1 y así sucesivamente.
¿CÓMO LLENAR UNA MATRIZ EN JAVA?
Para llenar una matriz en java en una posición en específico lo podemos hacer colocando el nombre de la matriz, luego la posición en la que queremos guardar un valor y luego asignar ese valor.
Veamos el siguiente ejemplo de una matriz 5x4 llamada numeros.
Vamos a almacenar un valor en el cuadro rojo, para ello vemos en que fila y columna está ubicado el cuadro rojo en este caso es en la fila 3 columna 1, ahora en java colocamos el nombre de la matriz indicando la posición y vamos a colocar el numero 8 en el cuadro rojo.
int numeros [][] = new int [5][4];
int numeros [][] = new int [5][4];
//aqui se indica que en la posicion 3,1 vamos a guardar un 8
numeros[3][1] = 8;
Ahora nuestra matriz se vería de esta forma:
LLENAR MATRIZ EN JAVA CON EL CICLO FOR
Para llenar una matriz con el ciclo for debemos de saber lo siguiente:
int matriz [][] = new int [5][4];
//matriz.length =cantidad de filas
//matriz[0].length = cantidad de columnas
//creamos un Scanner
Scanner entrada = new Scanner(System.in);
// 1er ciclo for va a recorrer las filas
for (int i = 0; i < matriz.length; i++) {
//segundo for va a recorrer las columnas
for (int j = 0; j < matriz[0].length; j++) {
//matriz los indices i j va a guardar un dato ingresado
//por teclado
matriz[i][j]= entrada.nextInt();
}
}
Con esto podemos ir recorriendo cada fila con cada columna, para así llenar cada uno de los espacios de la matriz, en este caso el iterador i es el encargado de las filas y el iterador j de las columnas, esto nos ayuda a que la matriz se recorra de izquierda a derecha.
IMPRIMIR UNA MATRIZ EN JAVA CON EL CICLO FOR
Para realizar esto solo debemos de cambiar la asignación de la entrada por teclado por un print en el que se imprima la matriz de la siguiente manera.
for (int i = 0; i < matriz.length; i++) { //segundo for va a recorrer la columnas for (int j = 0; j < matriz[0].length; j++) { //aqui se hace el cambio System.out.print( matriz[i][j]+" "); } System.out.println(""); }