2014-10-17 90 views
0

當在未進入正確的選擇它不顯示重新進入或重複循環while循環沒有瓶坯else語句和重複循環

int counterA = 0; 
while (counterA < 0) { 
    if (conversionSelection.equalsIgnoreCase("binary")) 
      counterA++; 
    if (conversionSelection.equalsIgnoreCase("octal")) 
      counterA++; 
    else System.out.println("Error. Please enter weither to convert the Hex to Octal or Binary:"); 
     conversionSelection = keyboard.nextLine(); 
    } 

回答

0

循環不應該執行,因爲在所有的條件失敗編譯從一開始就是這樣。

還有一個懸而未決的陳述。所以你需要有一個其他的 - 如果你的第二條if語句,如果你想其他的正確執行。雖然它目前可能不會產生錯誤,但防止懸掛'其他'是一項重要技能。

+0

謝謝......我原來寫的代碼有其他if語句,但一直寫爲「如果別人」並且不可能搞清楚爲什麼它不工作。 – jscincy1 2014-10-17 00:17:02

0

因爲counterA = 0和while循環條件是< 0,您的代碼將永遠不會進入while循環。您希望counterA小於零,或者在其集合中包含counterA的值的條件(例如while (counterA <= 0))。

0

這個循環將永遠不會啓動,因爲0比不小於0.1