Guía de programación en Java > Arrays unidimensionales
Los arrays o matrices son estructuras fundamentales en programación. Permiten almacenar y manipular colecciones de datos del mismo tipo de manera eficiente.
1. ¿Qué es un array unidimensional?
Un array unidimensional o vector es una colección de elementos ordenados que se identifican mediante un índice. Los índices en Java comienzan en 0.
Características principales:
- Todos los elementos del array deben ser del mismo tipo (por ejemplo,
int
,double
,String
, etc.). - El tamaño del array es fijo una vez que se crea.
Ejemplo conceptual:
Un array de enteros con 5 elementos puede representarse así:
Índice: 0 1 2 3 4
Elemento: 10 20 30 40 50
2. Declaración y creación de un array
En Java, un array debe declararse y luego inicializarse. La sintaxis básica es:
Declaración:
tipo[] nombreDelArray;
Creación:
nombreDelArray = new tipo[tamaño];
Declaración y creación en una línea:
tipo[] nombreDelArray = new tipo[tamaño];
Ejemplo:
public class EjemploArray {
public static void main(String[] args) {
int[] numeros = new int[5]; // Crea un array de enteros con 5 elementos
}
}
3. Inicialización de un array
Puedes inicializar un array asignando valores a cada posición.
Asignación individual:
numeros[0] = 10;
numeros[1] = 20;
numeros[2] = 30;
numeros[3] = 40;
numeros[4] = 50;
Inicialización directa:
int[] numeros = {10, 20, 30, 40, 50};
Ejemplo completo:
public class InicializacionArray {
public static void main(String[] args) {
int[] numeros = {10, 20, 30, 40, 50};
System.out.println("Primer elemento: " + numeros[0]);
System.out.println("Último elemento: " + numeros[4]);
}
}
Salida esperada:
Primer elemento: 10
Último elemento: 50
4. Recorrido de un array
Para procesar todos los elementos de un array, puedes usar un bucle.
Con un bucle for
:
for (int i = 0; i < numeros.length; i++) {
System.out.println("Elemento en índice " + i + ": " + numeros[i]);
}
Con un bucle for-each
(Java 5+):
for (int numero : numeros) {
System.out.println("Elemento: " + numero);
}
Ejemplo completo:
public class RecorridoArray {
public static void main(String[] args) {
int[] numeros = {10, 20, 30, 40, 50};
// Usando un bucle for
for (int i = 0; i < numeros.length; i++) {
System.out.println("Elemento en índice " + i + ": " + numeros[i]);
}
// Usando un bucle for-each
for (int numero : numeros) {
System.out.println("Elemento: " + numero);
}
}
}
Salida esperada:
Elemento en índice 0: 10
Elemento en índice 1: 20
Elemento en índice 2: 30
Elemento en índice 3: 40
Elemento en índice 4: 50
Elemento: 10
Elemento: 20
Elemento: 30
Elemento: 40
Elemento: 50
5. Variación for-each del bucle for
El bucle for-each es una forma simplificada de iterar sobre arrays y colecciones. Mejora la legibilidad del código y reduce la posibilidad de errores al no requerir un índice explícito.
5.1 Sintaxis del bucle for-each
for (tipo elemento : colección) {
// Código a ejecutar para cada elemento
}
- tipo: es el tipo de datos de los elementos que se van a iterar (por ejemplo,
int
,String
, etc.). - elemento: el nombre que le vamos a dar a la variable que contendrá el elemento de cada iteración.
- colección: puede ser un array o cualquier objeto que implemente la interfaz
Iterable
, como listas o conjuntos.
5.2 Ejemplo de uso
Aquí tienes un ejemplo práctico de cómo usar el bucle for-each:
String[] frutas = {"Manzana", "Banana", "Naranja"};
for (String fruta : frutas) {
System.out.println(fruta);
}
Salida:
Manzana
Banana
Naranja
5.3 Ventajas del bucle for-each
- Simplicidad: El código es más limpio y fácil de entender.
- Seguridad: Reduce el riesgo de errores relacionados con índices fuera de rango.
- Legibilidad: Hace que el propósito del bucle sea más claro.
5.4 Consideraciones
- No puedes modificar la colección mientras la recorres con un bucle for-each.
- Si necesitas acceder al índice de los elementos, deberías usar un bucle for tradicional.
6. Operaciones comunes con arrays
6.1. Encontrar el tamaño de un array
El tamaño de un array se obtiene con la propiedad length
.
System.out.println("Tamaño del array: " + numeros.length);
6.2. Sumar todos los elementos
int suma = 0;
for (int numero : numeros) {
suma += numero;
}
System.out.println("Suma total: " + suma);
6.3. Encontrar el valor máximo
int max = numeros[0];
for (int numero : numeros) {
if (numero > max) {
max = numero;
}
}
System.out.println("Valor máximo: " + max);
Fíjate como inicializamos la variable max al primer valor del vector. Piensa por qué.
7. Resumen
- Un array unidimensional almacena múltiples elementos del mismo tipo.
- Se accede a los elementos mediante índices que comienzan en 0.
- Usa bucles para recorrer y manipular los datos del array.
Reflexión:
Los arrays son herramientas poderosas para trabajar con conjuntos de datos. Practica inicializarlos, recorrerlos y realizar operaciones básicas para dominar su uso.
Deja una respuesta