为什么在下面的代码中,您可以连续在扫描仪中输入数字?我觉得代码在输入双精度时会导致无限循环,因为
userInput.hasNextDouble()
总是正确的,因为 userInput 的值在整个循环中不会改变。
我想解释一下为什么 while 条件不会导致无限循环。
public class Testing
{
public static void main(String[] args)
{
System.out.println("Enter numbers: ");
Scanner userInput = new Scanner(System.in);
int currentSize = 0;
while (userInput.hasNextDouble())
{
double nextScore = userInput.nextDouble();
currentSize++;
}
System.out.println(currentSize);
}
}