即時學習java和目前即時通訊卡在一個練習中,我無法理解爲什麼代碼的行爲是這樣的。我在紙上尋找我的步驟,但我期望與程序實際上不同的答案。如果任何人都可以請解釋爲什麼它做什麼,它簡單的while循環練習
CODE:
System.out.print("Enter an integer: ");
int numb = in.nextInt();
while (in.hasNextInt())
{
System.out.println(numb);
System.out.print("Enter an integer: ");
numb = in.nextInt();
}
測試儀是剛剛進入的數字,所以輸出應該是這樣的:
Enter an integer: 5
- 5
- Enter an integer: 10
- 10
- Enter an integer: 8
- 8
- Enter an integer: k
...
但它看起來是這樣的:
Enter an integer: 5
- 10
- 5
- Enter an integer: -4
- 10
- Enter an integer: 8
- -4
- Enter an integer: -6
- 8
- Enter an integer: 11
- -6
- Enter an integer: -1
基本上,'hasNextInt'看起來_ahead_以查看_next_'nextInt'是否可能;它並沒有看到後面的'nextInt'是否工作。 – ajb