Tu chuleta de supervivencia. Guárdala a mano en una pestaña del navegador cuando programes en Eclipse.
La "estantería" o el "pastillero". Una vez fabricado, no puede crecer ni encoger.
Crear un Array vacío y rellenarlo:
// Reserva el mueble con 5 huecos (posiciones del 0 al 4)
int[] edades = new int[5];
// Guarda el 35 en la primera posición
edades[0] = 35; Crear, rellenar del tirón y recorrer (for-each):
String[] dias = {"Lunes", "Martes", "Miércoles"};
// El bucle moderno: "Por cada diaActual en la colección dias..."
for (String diaActual : dias) {
System.out.println(diaActual);
}El texto es "inmutable" (se fotocopia) y los envoltorios (Wrappers) convierten texto en números.
Comparar y recortar textos:
String clave = "12345678Z";
// ¡Nunca uses == para textos! Usa .equals()
if (clave.equals("1234")) {
System.out.println("Acceso concedido");
}
// Recortar un trozo (Ej: Sacar solo los números del DNI, del índice 0 al 7)
String numeros = clave.substring(0, 8); Convertir Texto a Número (Wrapper):
String edadTexto = "40";
// Transforma el texto en un int real para poder hacer mates
int edadNum = Integer.parseInt(edadTexto);
int anoNacimiento = 2026 - edadNum;El "tren de vagones". Puedes añadir o quitar vagones sobre la marcha. Usa Genéricos <T>.
Crear, añadir y medir:
// La etiqueta <String> obliga a que solo entren textos
ArrayList<String> listaCompra = new ArrayList<>();
// Se colocan uno detrás de otro
listaCompra.add("Leche");
listaCompra.add("Pan");
// En listas usamos .size(), no .length
int totalArticulos = listaCompra.size(); Recuperar y borrar:
// Saca el vagón número 1 (el "Pan")
String articulo = listaCompra.get(1);
// Borrar. Los demás vagones se juntan solos automáticamente
listaCompra.remove("Leche"); // Borra por nombre
listaCompra.remove(0); // Borra por posiciónEl Álbum de cromos (HashSet) y la Taquilla con llave (HashMap).
Colección sin duplicados (HashSet):
HashSet<String> cromos = new HashSet<>();
cromos.add("Messi");
cromos.add("Messi"); // Esta línea se ignora automáticamente. No hay duplicados.El Diccionario o Taquilla (HashMap):
// Clave: DNI (String) -> Valor: Nombre (String)
HashMap<String, String> agenda = new HashMap<>();
// Guardar en el Mapa (put)
agenda.put("111A", "Ana");
agenda.put("222B", "Luis");
// Buscar por la Clave (get)
String persona = agenda.get("111A"); // Devuelve "Ana"Recorrer todo el Mapa (Pedir el llavero keySet):
for (String llaveDni : agenda.keySet()) {
// Abrimos la taquilla con cada llave para sacar el valor
String nombre = agenda.get(llaveDni);
System.out.println("El DNI " + llaveDni + " pertenece a " + nombre);
}El secreto de los Genéricos y las Interfaces para escribir código como un profesional.
El truco de las Interfaces (Polimorfismo):
List, Set y Map son INTERFACES (solo son el plano o el contrato). Por tanto, ¡nunca puedes construirlas directamente con new! Siempre declaramos la interfaz a la izquierda y construimos la clase concreta a la derecha.
// BIEN: A la izquierda la Interfaz (general), a la derecha la Clase (concreta)
List<String> miLista = new ArrayList<>();
Set<Integer> misNumeros = new HashSet<>();
Map<String, String> miDiccionario = new HashMap<>();
// MAL (Da error de compilación):
// List<String> error = new List<>(); El Inspector de Colecciones (Iterator): Imagina una cinta transportadora. El Iterator es la forma 100% segura de recorrer una colección y borrar elementos al mismo tiempo sin que Java sufra un cortocircuito (ConcurrentModificationException).
ArrayList<String> cajas = new ArrayList<>();
cajas.add("Vaso");
cajas.add("Libro roto");
cajas.add("Plato");
// 1. Llamamos al inspector (Iterator)
Iterator<String> inspector = cajas.iterator();
// 2. Mientras la cinta transportadora siga teniendo cajas...
while (inspector.hasNext()) {
// 3. Miramos la siguiente caja
String cajaActual = inspector.next();
// 4. Si la caja está defectuosa, la retiramos de forma segura
if (cajaActual.equals("Libro roto")) {
inspector.remove();
System.out.println("Se ha retirado un elemento defectuoso.");
}
}