这是我的代码,它应该接受来自用户的输入并设置2个int值。 exit函数正常工作,但是当输入字符串为“5 2”时,它将x设置为5并在y = s2.nextInt()时抛出java.util.NoSuchElementException;行,即使有下一个int。在我看到的nextInt()的一个例子中,整数被空格分隔,扫描仪仍然拾取了所有整数。我的遗失了吗?
String exit = "-1";
Scanner s1 = new Scanner(System.in);
String input = s1.next();
Scanner s2 = new Scanner(input);
if (input.equals(exit))
Sequence.quit();
else {
x = s2.nextInt();
y = s2.nextInt();
}
答案 0 :(得分:0)
如果您打印出变量ìnput
,您会看到它只包含“5” - 因为s1.next()
将在太空停止。
这样的事情:
String exit = "-1";
Scanner s1 = new Scanner(System.in);
int x = s1.nextInt();
if (x==-1)
Sequence.quit();
else {
y = s1.nextInt();
}