Java está saltando una línea (¿Cadenas en un escáner?) [Duplicado]
Esta pregunta ya tiene una respuesta aquí:
Problema con el escáner cuando se utiliza nextLine después de nextXXX [duplicar]Estoy aprendiendo Java, y no estoy muy metido en eso, y no sé por qué, pero Java parecía saltear una línea. No creo que el código de todas mis páginas sea realmente necesario, así que solo pondré la primera página y el resultado que obtendré al usarlo. ¡Gracias!
import java.util.Scanner;
public class First {
public static void main(String args[]){
Scanner scanz = new Scanner(System.in);
System.out.println("Hello, please tell me your birthday!");
System.out.print("Day: ");
int dayz = scanz.nextInt();
System.out.print("Month: ");
int monthz = scanz.nextInt();
System.out.print("Year: ");
int yearz = scanz.nextInt();
System.out.println("Now, tell me your name!");
System.out.print("Name: ");
String namez = scanz.nextLine();
Time timeObject = new Time(dayz,monthz,yearz);
Second secondObject = new Second(namez,timeObject);
System.out.println("\n\n\n\n\n" + secondObject);
}
}
Se salta la linea
String namez = scanz.nextLine();
Salida de consola: (disculpe el bit de cumpleaños, son otras cosas)
Hello, please tell me your birthday!
Day: 34
Month: 234
Year: 43
Now, tell me your name!
Name:
My name is and my birthday is 00/00/43
No le da la oportunidad de dar un nombre, solo se salta directamente y toma el nombre como nulo. Por favor, si alguien puede, dime por qué! Quiero aprender Java, y esta pequeña molestia está en mi camino.
¡Gracias!