2014-02-06 107 views
0

這裏是我的代碼:For循環和while循環跳過掃描儀

for (i = 0; i < numpc; i++){ 
     System.out.println(i); 

     pcdata[i] = nameinput.next(); //get unsorted data 

    } 

我也用的while循環重申for循環嘗試。該程序旨在輸入多個字符串(需要的字符串的數量由numpc表示)。輸入/輸出如下:

0   // variable (i) counter 
Apple 1 2 3 //Input 
1 
2 
3 
4 

正如你可以看到,掃描儀接收單個輸入後的for循環運行4次以上。這不應該發生,除非我失去了明顯的東西?

+2

'nameinput.nextLine()'? – assylias

+0

剩下的代碼是什麼? – tbodt

回答

1

當我們完成輸入後,我們將它作爲輸入,然後輸入ENTER。但是當next()正在接受輸入時,它會在您按下ENTER之前採取所有操作,然後下一個只接受ENTER。所以這就是你如何浪費額外的next()

+1

是的這個解釋有助於解決這個問題。我不得不使用nextLine()命令。謝謝。 –