Añadir y eliminar elementos de un ArrayList

14/Oct/2021 Java , Deja un comentario
Programación en Java

En este artículo vamos a ver cómo podemos codificar un programa que nos ayude a añadir y eliminar elementos de un ArrayList con Java. Me parece interesante a la hora de aprender a manejar el ArrayList ya que una de las cosas que tendremos que saber es cómo controlar el tamaño de la lista y validar que esta no esté vacía para poder seguir borrando elementos.

La idea es muy sencilla. Partiremos de un ArrayList que tiene una serie de elementos. A partir de ahí le pediremos al usuario que nos escriba por teclado «ADD» o «DEL». Mediante el comando «ADD» añadiremos un elementos al ArrayList y mediante el comando «DEL» borraremos un elemento del ArrayList. En el caso de que la lista esté vacía le indicaremos al usuario que no puede borrar más elementos al no existir elementos dentro de la lista. El programa acabará cuando el usuario escriba «END».

Manos a la obra… Lo primero será crear nuestro ArrayList y le cargaremos de una serie de elementos. No nos complicaremos mucho la vida y crearemos un ArrayList de tipo String.

// Definimos una ArrayList
ArrayList<String> list = new ArrayList<String>();

// Añadimos elementos
list.add("Elemento");
list.add("Elemento");
list.add("Elemento");

Lo siguiente será preparar la consola para poder recibir comandos del usuario. En este caso nos vamos a apoyar en la clase Scanner para poder realizar las lecturas.

// Lectura por consola
Scanner reader = new Scanner(System.in);
String sTexto = "";

El cuerpo del programa es un bucle do-while el cual existirá hasta que lo que escriba el usuario sea «END».

do {
  ...
} while(!sTexto.equals("END"));

Cada una de las respuestas queda en la variable sTexto, la cual analizaremos al final del bucle do-while.

do {
  sTexto = reader.next();
  ...
} while(!sTexto.equals("END"));

En el caso de que el usuario quiera añadir un elemento mediante el comando «ADD»  invocaremos al método .add() que nos permite añadir un nuevo elemento al ArrayList.

if (sTexto.equals("ADD"))
  list.add("Elemento");

Si el usuario quiere eliminar un elemento mediante el comando «END» lo que haremos será invocar al método .remove(). Como el método .remove() espera la posición de la lista a eliminar, le indicaremos el último elemento, que nos lo da el tamaño de la lista, es decir, el método .size() menos 1.

list.remove(list.size()-1);

Pero debemos de tener cuidado en el borrado de elementos. Ya que hay que comprobar que la lista no esté vacía. Esto nos lo indica el método .isEmpty(). En caso de que devuelva el valor de true será que está vacía y false si tiene todavía elementos.

if (!list.isEmpty())
  list.remove(list.size()-1);
else
  System.out.println("La lista está vacía. No puedes borrar más elementos.");

De esta forma, nuestro bucle do-while, nos va a quedar de la siguiente forma:

do {
  sTexto = reader.next();
  
  if (sTexto.equals("ADD"))
    list.add("Elemento");
  else if (sTexto.equals("DEL"))
    if (!list.isEmpty())
      list.remove(list.size()-1);
    else
      System.out.println("La lista está vacía. No puedes borrar más elementos.");
  
  System.out.println("Hay " + list.size() + " elementos en la lista");

} while(!sTexto.equals("END"));

Con esto ya habremos completado el código que nos permite añadir y eliminar elementos de un ArrayList en Java, controlando, en todo momento, que la lista no está vacía. Espero que os sirva para aprender un poco más a manejar cómo funcionan los ArrayList.

Vídeos sobre Java


¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.