2016-06-21 7 views

Antwort

2

Das ist, weil nach dem Lesen int links eine new line Zeichen, die von Ihrem scan.nextLine verbraucht wurde und es nicht auf Ihre nächste Eingabe warten. Sie müssen es vor dem Lesen eines Strings verbrauchen.

Scanner scan = new Scanner(System.in); 
//for a int 
int first_value = scan.nextInt(); 
scan.nextLine(); 
System.out.println(first_value); 
//for a string 
String first_name = scan.nextLine(); 
System.out.println(first_name) 
+0

Da das neue Zeilenzeichen in 'Scanner' gepuffert ist, nicht in' System.in'so, wenn Sie versuchen, es mit einem anderen Scanner zu lesen, wird es auf Ihre Eingabe warten. – Sanjeev

0

Verwenden System.out.println("Enter Your Age"); und System.out.println("Enter Your Name"); kurz vor dem Eingang vom Benutzer durch Scanner Objekt nehmen.

System.out.println("Enter your first name:"); 
String first_name = scan.nextLine(); 

System.out.println("Enter your age:"); 
int age = Integer.parseInt(scan.nextLine()); 

Jetzt ermöglicht es Ihnen, den Bildschirm zu halten für Sie Eingabe in das Programm eingeben.

Verwandte Themen