Debe escribir varias veces, antes de que el escáner lea la entrada
Si ejecuto este código
Scanner sc = new Scanner();
while (true) {
if (sc.next().equals("1"))
System.out.println("--1--");
else if (sc.next().equals("2"))
System.out.println("--2--");
else if (sc.next().equals("3"))
System.out.println("--3--");
else if (sc.next().equals("4"))
System.out.println("--4--");
else if (sc.next().equals("help"))
System.out.println("--help--");
}
No se leerá la primera vez que escriba enter. Tengo que escribir 2-4 veces antes de que lea la entrada. Una sesión podría verse así:
1
1
1
1
--1--
3
3
--3--
help
2
1
help
--help--
No importa lo que escriba, solo leerá la última entrada de las cuatro entradas. A veces se lee después de dos entradas. Estoy realmente confundido acerca de esto. ¿Debería usar múltiples escáneres?