[ Foro de Java ]
Tengo un problema con usar correctamente este método de la clase Scanner. Tengo entendido que retorna un booleano, el problema es que sólo me retorna true si escribo una palabra, pero si no escribo nada (pulsando dos veces intro) nunca me imprime ese ''adiós'', es decir no contempla ese retorno del false que es lo que busco. . . Alguien sabe por qué sucede esto?
Muchísimas gracias por vuestro tiempo!
public class Incremento {
public static void main (String [] args){
Scanner input = new Scanner(System.in);
System.out.println("Escriba");
if(input.hasNext()){
System.out.println("hola");
}else {
System.out.println("adiós");
}
}
}
Para los métodos nextInt, nextFloat, next... un espacio en blanco es un separador válido, y también lo es un salto de línea.
Deberás leer con nextLine y ver si el resultado es una cadena vacía.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)