Hola, ¿que tal?
En primer lugar he observado esto:
Cita: System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
System.out.println(" ");
¿Por qué haces tantos println seguidos?
No sería mejor hacer:
Código:
System.out.println("\n\n\n\n\n\n");
¿O algo similar? Es que me ha sorprendido ver tantos seguidos.
Respecto a lo otro, podías recoger el valor de teclado y a este aplicarle un cast a entero.
Cita: op = Integer.parseInt(in.readLine());
El problema está en esta línea. Cuando se llama al método parseInt, espera una cadena de carácteres (String) con números. Si recibe "123" por ejemplo, funciona bien y lo convierte a "123" (entero). Pero si recibe cualquier carácter que no sea un número, se produce una excepción de tipo
java.lang.NumberFormatException. Por lo que debes de tratarla cuando se llame a este método. Podrías poner el mismo mensaje de error al tratar la excepción.
Saludos.