Matrices de Java
Matrices de Java
Las matrices se utilizan para almacenar múltiples valores en una sola variable, en lugar de declarar variables separadas para cada valor.
Para declarar una matriz, defina el tipo de variable con corchetes :
String[] cars;
Ahora hemos declarado una variable que contiene una matriz de cadenas. Para insertarle valores, podemos usar una matriz literal: coloque los valores en una lista separada por comas, dentro de llaves:
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
Para crear una matriz de enteros, podría escribir:
int[] myNum = {10, 20, 30, 40};
Acceder a los Elementos de un Array
Accede a un elemento de matriz haciendo referencia al número de índice.
Esta sentencia accede al valor del primer elemento en coches:
Ejemplo
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
System.out.println(cars[0]);
// Outputs Volvo
Nota: los índices de matriz comienzan con 0: [0] es el primer elemento. [1] es el segundo elemento, etc.
Cambiar un elemento de matriz
Para cambiar el valor de un elemento específico, consulte el número de índice:
Ejemplo
cars[0] = "Opel";
Ejemplo
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
cars[0] = "Opel";
System.out.println(cars[0]);
// Now outputs Opel instead of Volvo
Longitud de la matriz
Para averiguar cuántos elementos tiene una matriz, use la length
propiedad:
Ejemplo
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
System.out.println(cars.length);
// Outputs 4
Bucle a través de una matriz
Puede recorrer los elementos de la matriz con el for
bucle y usar la length
propiedad para especificar cuántas veces debe ejecutarse el bucle.
El siguiente ejemplo genera todos los elementos en la matriz de automóviles :
Ejemplo
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (int i = 0; i < cars.length; i++) {
System.out.println(cars[i]);
}
Bucle a través de una matriz con For-Each
También hay un bucle " for-each ", que se usa exclusivamente para recorrer elementos en matrices:
Sintaxis
for (type variable : arrayname) {
...
}
El siguiente ejemplo genera todos los elementos en la matriz de autos , usando un bucle " para cada uno ":
Ejemplo
String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (String i : cars) {
System.out.println(i);
}
El ejemplo anterior se puede leer así: para cada String
elemento (llamado
i - como en
i ndex) en cars , imprime el valor de i .
Si compara el for
ciclo y el ciclo for-each , verá que el método for-each es más fácil de escribir, no requiere un contador (usando la propiedad de longitud) y es más legible.
Matrices multidimensionales
Una matriz multidimensional es una matriz de matrices.
Para crear una matriz bidimensional, agregue cada matriz dentro de su propio conjunto de llaves :
Ejemplo
int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
myNumbers ahora es una matriz con dos matrices como elementos.
Para acceder a los elementos de la matriz myNumbers , especifique dos índices: uno para la matriz y otro para el elemento dentro de esa matriz. Este ejemplo accede al tercer elemento (2) en la segunda matriz (1) de myNumbers:
Ejemplo
int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
int x = myNumbers[1][2];
System.out.println(x); // Outputs 7
También podemos usar un for loop
dentro de otro for loop
para obtener los elementos de una matriz bidimensional (todavía tenemos que señalar los dos índices):
Ejemplo
public class Main {
public static void main(String[] args) {
int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
for (int i = 0; i < myNumbers.length; ++i) {
for(int j = 0; j < myNumbers[i].length; ++j) {
System.out.println(myNumbers[i][j]);
}
}
}
}