本文介紹了在Scaner.nextInt()之后使用Scaner.nextLine()的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
import java.util.Scanner;
public class Hello {
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
int a;
String s;
System.out.println("Enter int : ");
a = in.nextInt();
System.out.println("Enter String : ");
s = in.nextLine();
System.out.println("int : "+a+"
String : "+s);
}
}
我完全是Java的初學者。我創建了類Hello,并希望輸入一個數字和一個字符串,但我認為s = in.nextLine();該行被忽略。如何逐行輸入兩個值。
推薦答案
當您使用Scanner.nextInt()時,它不會消耗新行(或其他分隔符)本身,因此返回的下一個令牌通常是空字符串。因此,您需要在它后面加上Scanner.nextLine()。您可以丟棄結果,而不是將其分配給a:
int a = in.nextInt();
in.nextLine();
正是由于這個原因,我建議始終使用nextLine(或BufferedReader.readLine()),并在使用Integer.parseInt()之后進行解析。
這篇關于在Scaner.nextInt()之后使用Scaner.nextLine()的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,






