我正在使用while循環和if語句。獲取while循環以繼續if語句
如果else語句正在運行,我希望循環繼續。在我的理解中「繼續」應該重新啓動循環,但事實並非如此。
我發現一個解決方法來解決這個問題,但它是設置「cho = 1;」。但這真的有必要嗎?有沒有更多的邏輯方法來解決這個問題?
謝謝!
while (sum < 21 && cho == 1 && sum != 21) {
System.out.println("Do you want to (1)hit or (2) stay?");
cho = scan.nextInt();
if (cho == 1) {
getCard(index++);
if (sum > 21) {
System.out.println("You busted! Dealer wins.");
return;
}
} else if (cho == 2) {
System.out.println("Your value is " + sum);
sum = playerTotal;
}
else{
cho = 1;
System.err.println("The input value given is not a valid integer");
continue; //Does not restart the loop.
}
}
定義「不起作用」。當你在調試器中完成這一步時,它做了什麼? 「繼續」操作完全按照您所描述的內容進行操作,而且似乎更有可能出現邏輯錯誤,而不是「continue」關鍵字「不起作用」。 – David
'continue'會重複循環,但是如果你的條件改變了,那麼你的循環就會結束。 – Rogue
好的,我明白了,當輸入不等於1或2時,條件會發生變化。我不明白條件仍然必須是真的才能繼續工作,我認爲它做了重寫。謝謝 – Maximus