1
如下面的代码是如何工作很困惑:当main方法调用方法时,方法是否执行从上到下?
static Scanner sc = new Scanner(System.in);
public static int GetAnInteger()
{
while (!sc.hasNextInt())
{
sc.nextLine();
System.out.print("That's not "
+ "an integer. Try again: ");
}
return sc.nextInt();
}
我明白.hasNextInt()记录的值,并作为一个布尔值,以测试它是否是一个int类型。 .nextLine()记录下一行,但它如何调试循环?
另外,当我执行代码,是不是系统应该打印语句后,我输入到.nextLine()?
不知道sc是什么类,这是很难解释,虽然我可以猜测。你能否更新这个问题来澄清这个帖子? – Prisoner
以调用它们的顺序调用方法;不一定是自上而下。 –
如果你立即输入一个'int',循环将被有效地跳过。 –