Tutorial de arrays en Java: Declaración, creación e inicialización – Código de ejemplo
¿Qué es un array en Java?
En Java, un array es una estructura de datos integrada que almacena una secuencia de tamaño fijo de elementos todos del mismo tipo. Los elementos se indexan comenzando en 0. Los arrays son objetos que heredan de Object e implementan las interfaces Serializable y Cloneable, por lo que pueden almacenar valores primitivos o referencias a objetos.
En la práctica, un array te permite reemplazar código como:
x0=0; x1=1; x2=2; x3=3; x4=4; x5=5;
con una forma concisa e indexada:
x[0]=0; x[1]=1; x[2]=2; x[3]=3; x[4]=4; x[5]=5;
Este tutorial cubre:
- Qué es un array
- Variables de array y el proceso de creación en 3 pasos
- Tu primer programa con arrays
- Arrays pasados por referencia
- Arrays multidimensionales
Tener una referencia de array te permite iterar eficientemente:
for(count=0; count<5; count++) { System.out.println(x[count]); }
Variables de array
Usar un array en Java sigue un simple proceso de tres pasos:
- Declarar el tipo de array.
- Instanciar el array con un tamaño.
- Opcional: Inicializar sus elementos.
1) Declarar un array
Sintaxis:
<elementType>[] <arrayName>;
o
<elementType> <arrayName>[];
Ejemplo:
int intArray[]; // declara un array que contendrá valores int int []intArray; // misma declaración
2) Construir un array
Asigna memoria para el array:
arrayName = new dataType[size];
Ejemplo:
intArray = new int[10]; // crea espacio para 10 enteros
Declaración y construcción combinadas:
int intArray[] = new int[10];
3) Inicializar un array
Asigna valores individualmente:
intArray[0] = 1; intArray[1] = 2;
O proporciona una lista de inicialización en la declaración:
int intArray[] = {1, 2, 3, 4};
Esto crea un array de longitud 4 con los valores dados.
Primer programa con arrays
Paso 1: Copia el 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: Compila y ejecuta. Salida:
array[0] = 1 array[1] = 2 array[2] = 3 array[3] = 4 array[4] = 5 array[5] = 6 array[6] = 7
Paso 3: Usar array.length devuelve el tamaño del array.
Descomenta la línea 10 y ejecuta de nuevo:
Length of Array = 7
Paso 4: Java fuerza comprobación de límites. Descomenta la línea 11 para ver la excepción:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8 at ArrayDemo.main(ArrayDemo.java:11) Command exited with non-zero status 1
En contraste, C leería o escribiría silenciosamente fuera de límites.
Arrays pasados por referencia
Los parámetros de array se pasan por referencia, lo que significa que cualquier modificación dentro de un método afecta al array original.
Ejemplo:
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]); } }
Salida:
Before Function Call Apple After Function Call Changed
Arrays multidimensionales
Un array multidimensional es simplemente un array de arrays. Declararlo requiere un par adicional de corchetes por cada dimensión:
int twoD[][] = new int[4][5];
Al asignar, solo necesitas especificar la primera dimensión (la más a la izquierda). Las dimensiones subsiguientes pueden asignarse después, dándote control fino sobre la disposición de memoria.
Ejemplo:
public class Guru99 { public static void main(String[] args) { // Crear un array bidimensional 4x4. int[][] twoD = new int[4][4]; // Asignar algunos elementos. twoD[0][0] = 1; twoD[1][1] = 2; twoD[3][2] = 3; System.out.print(twoD[0][0] + " "); } }
Salida:
1
Java
- Dominando arrays en C#: Declaración, inicialización y operaciones
- Dominando los Arrays en C++: Declaración, Inicialización y Ejemplos Prácticos
- Dominando Arrays Multidimensionales en C++: Declaración, Inicialización y Recorrido
- Dominando arrays en C: declaración, inicialización y operaciones comunes
- Arrays en C++: Declaración, inicialización y técnicas con punteros
- MATLAB: Dominando Arrays Multidimensionales y Especiales
- Dominar Arrays en Java: Declaración, Inicialización y Manipulación
- Dominar Arrays Multidimensionales en Java: Ejemplos 2D y 3D
- Técnicas de Copia de Arrays en Java: Guía Completa
- Crear un array de objetos en Java: Guía paso a paso
- Java Static explicado: Variables, métodos y bloques – Ejemplos prácticos