Cargando...

Métodos de List en Java

Mantén un ArrayList<String> llamado tags, añade oak y luego pine, y lee el primer valor con tags.get(0). Compila Rack.java y ejecuta java Rack. La pantalla debe mostrar una línea: oak. La llamada get(0) elige la ranura cero. Demos posteriores en esta página muestran size() imprimiendo 2 y remove(0) dejando [pine]. Leer una ranura, contar y quitar una ranura es lo que enseña esta página.

Leer una ranura con get

En la página de ArrayList imprimiste la lista entera y viste [oak, pine]. Esa impresión completa sigue funcionando. Esta página alcanza un valor cada vez. La llamada tags.get(0) devuelve la palabra de la ranura cero. Los números de ranura empiezan en cero, la misma idea que plants[0] en la página de arrays, pero la llamada usa paréntesis: get(0), no corchetes solos tras el nombre.
Abre Rack.java. Mantén el nombre de clase pública Rack para que coincida con el archivo. Borra el System.out.println(tags); sobrante como única línea didáctica si copiaste Shelf al pie de la letra: el primer archivo conservado de esta página imprime tags.get(0) en su lugar. Borra también cualquier Scanner, nextLine, Bell.ring() o demo de package. El programa no debe esperar a que escribas.
Cerca del inicio, encima de public class Rack, mantén:
import java.util.ArrayList;
Dentro de main, crea la lista y añade las mismas dos palabras:
ArrayList<String> tags = new ArrayList<String>();
tags.add("oak");
tags.add("pine");
Luego escribe:
System.out.println(tags.get(0));
Pasa 0 dentro de los paréntesis. No escribas tags[0]. No imprimas la lista entera como camino obligatorio de esta primera demo. Guarda antes de compilar.

Rack get first slot

java
import java.util.ArrayList;

public class Rack {
    public static void main(String[] args) {
        ArrayList<String> tags = new ArrayList<String>();
        tags.add("oak");
        tags.add("pine");
        System.out.println(tags.get(0));
    }
}

Desde la carpeta que guarda Rack.java, ejecuta javac Rack.java. Cuando paréntesis, llaves, ángulos y puntos y coma coinciden, javac no escribe ninguna línea propia. Luego ejecuta java Rack — no java Rack.java ni java ArrayList. Quita el final .java del comando de ejecución.
El programa debe imprimir una línea y parar: oak. No te pide escribir. Si la terminal espera teclado, aún queda una llamada nextLine de un ejercicio anterior en algún archivo. Bórrala y mantén la creación, las dos líneas add y System.out.println(tags.get(0));.
Recorre la ejecución una vez. Java empieza en Rack.main. La lista crece con dos adds. get(0) devuelve oak. La línea de impresión escribe esa palabra. La pantalla muestra oak. Nada más debe imprimirse. Si ves [oak, pine], aún imprimés la lista entera. Cambia la línea a tags.get(0). Si ves ding o 9, sigue corriendo un Porch o Pier antiguo — usa java Rack.
Si por error mantienes get(1) como impresión, la pantalla muestra pine. Es Java válido, pero no es el archivo que esta página conserva para la primera demo. Mantén get(0) para que la pantalla sea oak. Si llamas get(2) tras solo dos adds, el programa lanza un error en tiempo de ejecución porque la ranura dos nunca se llenó. Quédate con get(0) aquí.

Contar con size

Una segunda demo pregunta cuántos valores hay en la lista. Tras los mismos dos adds, llama tags.size() e imprime ese número.

Rack size after two adds

java
import java.util.ArrayList;

public class Rack {
    public static void main(String[] args) {
        ArrayList<String> tags = new ArrayList<String>();
        tags.add("oak");
        tags.add("pine");
        System.out.println(tags.size());
    }
}

Compila y ejecuta igual: javac Rack.java, luego java Rack. La pantalla muestra 2. El método size() devuelve un número entero. No imprime las palabras. Si la pantalla muestra [oak, pine], imprimiste la lista en lugar de size(). Si muestra oak, aún tienes el print de get(0) de la primera demo. Para el segundo archivo mantén solo System.out.println(tags.size()); después de los dos adds.
No inventes tags.length en un ArrayList en esta página. Los arrays fijos usan .length. Las listas usan .size(). Mezclar esos nombres es un resto común de la página de arrays. Mantén size() para la lista.

Quitar una ranura con remove

Una tercera demo elimina la ranura cero y luego imprime la lista que queda.

Rack remove then print

java
import java.util.ArrayList;

public class Rack {
    public static void main(String[] args) {
        ArrayList<String> tags = new ArrayList<String>();
        tags.add("oak");
        tags.add("pine");
        tags.remove(0);
        System.out.println(tags);
    }
}

Compila y ejecuta otra vez. Tras remove(0), oak desaparece. Pine pasa a la ranura cero. Imprimir la lista muestra [pine]. La pantalla ya no es [oak, pine]. Si imprimes tags.get(0) tras el remove en lugar de la lista entera, verías solo pine — esa forma vale como comprobación, pero el tercer archivo conservado imprime la lista para que veas los corchetes con una sola palabra restante.
Llama remove con un número de ranura que exista. Tras dos adds, remove(0) y remove(1) son legales antes de cualquier borrado. Esta página conserva remove(0) para que oak salga primero. No llames remove(2) en una lista de dos palabras: esa ranura nunca estuvo.

Comparado con crear ArrayList y add

En la página de ArrayList el archivo didáctico se detenía en println(tags) y la pantalla [oak, pine]. Esta página mantiene el mismo hábito de crear y add, y luego suma get, size y remove. Un Shelf sobrante que solo imprime la lista entera es historia, no el camino del quiz aquí. En esta página ejecuta java Rack con la demo que estás estudiando: primero get(0), luego size(), luego remove más impresión.
No necesitas un import nuevo para estas llamadas. Pertenecen a ArrayList una vez importado el tipo. Mantén import java.util.ArrayList; arriba de cada archivo Rack de esta página.
Cuando más adelante mapees claves a valores, una página siguiente — HashMap — abre esa historia. Quédate con llamadas de list aquí. No inventes put ni sintaxis de map como requisito en esta página.

Qué queda para HashMap

Esta página cierra el kit básico de list: leer una ranura, contar valores, quitar una ranura. La página siguiente abre otra colección donde cada entrada tiene clave y valor. Quédate con get, size y remove sobre ArrayList aquí. No escribas líneas HashMap en las demos Rack.
Si aún hay archivos viejos Shelf.java cerca, déjalos o bórralos solo si confunden qué clase ejecutas. Ejecuta java Rack después de compilar el archivo de la demo que quieres.

Antes de HashMap

Puedes mantener ArrayList<String> tags, añadir oak y pine, imprimir tags.get(0) para ver oak, imprimir tags.size() para ver 2, y tras tags.remove(0) imprimir la lista para ver [pine]. Compila Rack.java y ejecuta java Rack en cada demo conservada. Los métodos de list hicieron su trabajo. La página siguiente es HashMap, donde una clave apunta a un valor en un objeto.
Mantén el import. Mantén los dos adds antes de get, size o remove. Mantén la ranura cero como índice didáctico de esta página. Esos hábitos son el punto de control antes de seguir. Cuando get(0) muestre oak y size() muestre 2, estás listo para el tema siguiente.

🧠 Pon a Prueba tu Conocimiento

Listo para Empezar

Pon a Prueba tu Conocimiento

Ponte a prueba con este cuestionario interactivo y descubre qué tan bien entiendes el tema

❓
6
Preguntas
🎯
70%
Para Aprobar
♾️
∞
Tiempo
🔄
∞
Intentos

📝 Instrucciones

  • Lee cada pregunta cuidadosamente
  • Selecciona la mejor respuesta para cada pregunta
  • Puedes repetir el quiz tantas veces como quieras
  • Tu progreso se mostrará en la parte superior