我写了以下代码
public class TestInput {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String name = scan.nextLine();
String last = scan.next();
System.out.println(name + " " + last);
scan.nextLine();
int n = scan.nextInt();
System.out.println(n);
}
}
根据我的理解,nextLine()
读取任何内容,直到我们按下Enter按钮,next()
应该读取任何内容直到第一个空格。但是,如果我给出以下输入:
dhufidf jijoi
asd
,然后我按下回车键,它显示输出:(并且不等待应该在nextLine()
中输入的下一个字符串)
dhufidf jijoi asd
它将直接进入nextInt()
扫描。为什么会这样?