Autor Tema: Eliminar de ArrayList Java, verificando el dato introducido captura errores try  (Leído 1945 veces)

ervillesGr

  • Sin experiencia
  • *
  • Mensajes: 1
    • Ver Perfil
Hola chic@s, estoy aprendiendo Java y estoy un poco atrancado en un error. Tengo un ArrayList que creo a través del teclado. La duda que tengo es a la hora de eliminar del ArrayList. Borro elementos según el índice de los elementos. Tengo ya verificado que se escriban número y no letras con un try/catch pero no doy con la forma de verificar que el número introducido coincida con uno de los del índice del ArrayList, que al ser creado a través del teclado es variable. Si escribo un número que no sea del índice, por ejemplo 4 y solo tengo 2 elementos da error.

Dejo la parte del código por aquí:

Código: [Seleccionar]
} else if (accion.equalsIgnoreCase("eliminar cliente")) {
//mostramos los clientes que hay en la lista
pintarClientes(listaClientes);
System.out.println(" ¿Qué cliente desea eliminar? ");
boolean error = false;

do {

error = false;
try {
listaClientes.remove(teclado.nextInt());
teclado.nextLine();
error = true;

} catch (InputMismatchException ex) {
System.out.println("No se puede escribir texto. Introduzca un número de los códigos de la lista. ");
error = false;
} finally {
teclado.nextLine();
}
} while (!error);


//mostramos los clientes que quedan en la lista
pintarClientes(listaClientes);

De antemano, muchas gracias!
« Última modificación: 14 de Enero 2017, 18:14 por Alex Rodríguez »
Aprendiendo el bello arte de la programación en Java

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Eliminar de ArrayList Java, verificando el dato introducido
« Respuesta #1 en: 30 de Diciembre 2016, 12:55 »
Hola ervillesGr.

Lo primero recomendarte que leas las reglas básicas para escribir consultas en el foro, ahí encontrarás como colocar código en tus mensajes bien formateado entre otras cosas.
https://www.aprenderaprogramar.com/foros/index.php?topic=1460.msg7784#msg7784

En cuanto a tu duda, podrías añadir otro bloque catch para recoger otra excepción.
Código: [Seleccionar]
catch (IndexOutOfBoundsException e) {
        System.out.println("El índice indicado no existe.");
          }

En estos dos enlaces hay dos cursos de java.
https://www.aprenderaprogramar.es/index.php?option=com_content&view=category&id=68&Itemid=188

https://www.aprenderaprogramar.es/index.php?option=com_content&view=category&id=58&Itemid=180

Saludos. ;D

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".