Los arreglos o matrices son un conjunto de datos del mismo tipo. Su longitud o cantidad de elementos es fija y siempre la conservan, aunque la referencia de a un arreglo puede reasignarse a un nuevo arreglo de distinta longitud.
Arreglo unidimensional
Un arreglo unidimensional lo podemos representar de la siguiente manera ya que no estamos hablando de un lenguaje de programación en especifico:
nombre = arreglo[longitud]: entero numeros = arreglo[10]: entero
Cada vez que creamos un arreglo la memoria reserva los espacios o casillas para cada dato del arreglo con identificador numérico representado entre corchetes []. Esto lo podemos representar de la siguiente forma:
Imagen pendiente
En el siguiente ejemplo declaramos un arreglo del tipo entero con una longitud de 10 valores y le asignamos los valores uno por uno, en este caso vamos a utilizar el lenguaje Java.
package org.luisalberto.arreglos;
public class Arreglos {
public static void main(String[] main) {
// Declaramos un arreglo del tipo entero
int[] numeros;
// Iniciamos el arreglo especificando su longitud
numeros = new int[10];
// Asignamos los valores numéricos a nuestro arreglo
numeros[0] = 1;
numeros[1] = 2;
numeros[2] = 3;
numeros[3] = 4;
numeros[4] = 5;
numeros[5] = 6;
numeros[6] = 7;
numeros[7] = 8;
numeros[8] = 9;
numeros[9] = 10;
System.out.println("El valor del arreglo numeros[] en la posición 5 es: " + numeros[5]);
}
}
$ javac -d . Arreglos.java $ java org.luisalberto.arreglos.Arreglos El valor del arreglo numeros[] en la posición 5 es: 6
En la línea 8 especificamos que la variable numeros se trata de un arreglo, pero aún no reserva espacio en memoria. En la línea 11 especificamos el el tamaño o longitud de nuestro arreglo y lo creamos.
Al ser Java un lenguaje orientado a objetos es necesario iniciar el arreglo con la palabra new.
Las líneas 8 y 11 pueden reducir en una sola línea de la siguiente manera:
int[] numeros = new int[10]
Así como también se puede declarar, crear y llenar de la siguiente manera
int numerito[] = {0, 1, 2, 3, 4, 5, 6, 6, 7, 8, 9};
Arreglo bidimensional
También se pueden crear arreglos bidimensionales, estos arreglos contienen dos identificadores para cada casilla en memoria. Esto lo podemos representar de la siguiente manera:
nombre = arreglo[longitud-filas, longitud-columnas]: entero numeros = arreglo[10, 5]: entero
La memoria reservada la podemos representar de la siguiente manera:
Imagen pendiente
Veamos como se declara el arreglo de longitud 10 x 2 en Java y como asignarle valores:
package org.luisalberto.arreglos;
public class ArregloMultidimensional {
public static void main(String[] main) {
// Declaramos un arreglo del tipo entero
int[][] numeros;
// Iniciamos el arreglo especificando su longitud
numeros = new int[10][2];
// Asignamos los valores numéricos a nuestro arreglo
numeros[0][0] = 1;
numeros[1][0] = 2;
numeros[2][0] = 3;
numeros[3][0] = 4;
numeros[4][0] = 5;
numeros[5][0] = 6;
numeros[6][0] = 7;
numeros[7][0] = 8;
numeros[8][0] = 9;
numeros[9][0] = 10;
// Asignamos los valores numéricos a nuestro arreglo
numeros[0][1] = 11;
numeros[1][1] = 12;
numeros[2][1] = 13;
numeros[3][1] = 14;
numeros[4][1] = 15;
numeros[5][1] = 16;
numeros[6][1] = 17;
numeros[7][1] = 18;
numeros[8][1] = 19;
numeros[9][1] = 20;
System.out.println("El valor del arreglo numeros[][] en la posición 4 y 1 es: " + numeros[4][1]);
}
}
$ javac -d . ArregloMultidimensional.java $ java org.luisalberto.arreglos.ArregloMultidimensional El valor del arreglo numeros[][] en la posición 4 y 1 es: 15
También se puede declarar en una sola línea de la siguiente manera:
int[][] numeros = new int[10][2];
Y se puede llenar de la siguiente forma:
int[][] numeros = {{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, {0, 1}};