Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/02/2013, 13:49
Avatar de Xerelo
Xerelo
 
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 8 meses
Puntos: 306
Respuesta: Problema programa DVDCine

Cuando utilizas next(), nextInt(), etc siempre tiene que existir un valor por lo que \n no es válido, pero queda almacenado en el buffer hasta que aparezcan nuevos datos.

Sin embargo nextLine() recoge todos los caracteres hasta que encuentra un \n, que forma parte de la línea por lo que no queda almacenado, porque una línea sí puede estar vacía.

Cuando vienes de un nextInt en el buffer de Scanner hay un \n, y nextLine() lo interpreta como una línea vacía.

Puedes comprobar la diferencia entre pulsar sólo enter con nextInt y nextLine.

Creo que es algo que deberían corregir, su funcionamiento lleva a confusión.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.