Matrices en Java
¿Qué es Java ¿Matrices?
Java Formación es un tipo muy común de estructura de datos que contiene todos los valores de datos del mismo tipo de datos. Los elementos de datos colocados en la matriz se denominan elementos y el primer elemento de la matriz comienza con el índice cero. Las matrices heredan la clase de objeto e implementan las interfaces serializables y clonables. Podemos almacenar valores u objetos primitivos en una matriz.
En palabras simples, es una construcción de programación que ayuda a reemplazar esto.
x0=0; x1=1; x2=2; x3=3; x4=4; x5=5;
con este …
x[0]=0; x[1]=1; x[2]=2; x[3]=3; x[4]=4; x[5]=5;
Lo que esto ayuda es que una variable puede hacer referencia al índice (el número entre corchetes []) para facilitar bucle.
for(count=0; count<5; count++) { System.out.println(x[count]); }
Tipos de matriz en Java
Hay dos tipos de matrices.
- Matriz unidimensional
- Matriz multidimensional
Variables de matriz
Usar una matriz en su programa es una proceso de 3 pasos –
1) Declarando su matriz
2) Construyendo tu matriz
3) Inicializa tu matriz
1) Declarando tu matriz
Sintaxis
<elementType>[] <arrayName>;
o
<elementType> <arrayName>[];
Ejemplo:
int intArray[]; // Defines that intArray is an ARRAY variable which will store integer values int []intArray;
2) Construyendo una matriz
arrayname = new dataType[]
Ejemplo:
intArray = new int[10]; // Defines that intArray will store 10 integer values
Declaración y Construcción combinadas
int intArray[] = new int[10];
3) Inicializar una matriz
intArray[0]=1; // Assigns an integer value 1 to the first element 0 of the array intArray[1]=2; // Assigns an integer value 2 to the second element 1 of the array
Declarar e inicializar una matriz
[] = {};Ejemplo:
int intArray[] = {1, 2, 3, 4}; // Initilializes an integer array of length 4 where the first element is 1 , second element is 2 and so on.
Primer programa de matriz
Paso 1) Copie el siguiente código en un editor.
class ArrayDemo{ public static void main(String args[]){ int array[] = new int[7]; for (int count=0;count<7;count++){ array[count]=count+1; } for (int count=0;count<7;count++){ System.out.println("array["+count+"] = "+array[count]); } //System.out.println("Length of Array = "+array.length); // array[8] =10; } }
Paso 2) Guarde, compile y ejecute el código. Observe la salida
Rendimiento esperado:
array[0] = 1 array[1] = 2 array[2] = 3 array[3] = 4 array[4] = 5 array[5] = 6 array[6] = 7
Paso 3) Si x es una referencia a una matriz, x.longitud le dará la longitud de la matriz.
Descomente la línea n.° 10. Guarde, compile y ejecute el código. Observe el resultado
Length of Array = 7
Paso 4) A diferencia de C, Java Comprueba el límite de una matriz al acceder a un elemento en ella. Java no permitirá que el programador exceda su límite.
Descomente la línea n.° 11. Guarde, compile y ejecute el código. Observe el resultado
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8 at ArrayDemo.main(ArrayDemo.java:11) Command exited with non-zero status 1
Paso 5) Se lanza ArrayIndexOutOfBoundsException. En el caso de C, el mismo código habría mostrado algún valor basura.
Java Matriz: Pasar por referencia
Las matrices se pasan a funciones por referencia o como un puntero a
el original. Esto significa que cualquier cosa que le hagas al Array dentro del
La función afecta al original.
Ejemplo: para comprender que los Array se pasan por referencia
Paso 1) Copia el siguiente código en un editor
class ArrayDemo { public static void passByReference(String a[]){ a[0] = "Changed"; } public static void main(String args[]){ String []b={"Apple","Mango","Orange"}; System.out.println("Before Function Call "+b[0]); ArrayDemo.passByReference(b); System.out.println("After Function Call "+b[0]); } }
Paso 2) Guarde, compile y ejecute el código. Observe la salida
Rendimiento esperado:
Before Function Call Apple After Function Call Changed
Matrices multidimensionales
Las matrices multidimensionales son en realidad matrices de matrices.
Para declarar una matriz multidimensional variable, especifique cada índice adicional utilizando otro conjunto de corchetes.
Ex: int twoD[ ][ ] = new int[4][5] ;
Cuando asigna memoria para una matriz multidimensional, solo necesita especificar la memoria para la primera dimensión (la más a la izquierda).
Puede asignar las dimensiones restantes por separado.
In Java, la longitud de la matriz de cada matriz en una matriz multidimensional está bajo su control.
Ejemplo
public class Guru99 { public static void main(String[] args) { // Create 2-dimensional array. int[][] twoD = new int[4][4]; // Assign three elements in it. twoD[0][0] = 1; twoD[1][1] = 2; twoD[3][2] = 3; System.out.print(twoD[0][0] + " "); } }
Rendimiento esperado:
1