我正在開發一個java程序。現在一切都完全正常,我所有的功能都在那裏。但是,我堅持的部分是如何退出do-while
循環中的程序。我必須得到錯誤的語法。在java中退出程序do-while循環
基本上,我設置了一個開關done
這對用戶的輸入起反應。現在,它正在工作並循環執行程序,但如果我說「否」繼續,它就不會退出。
這裏是發生這種情況的部分代碼:
public void main() {
String userInput;
boolean done = true;
Scanner keyboard = new Scanner(System.in);
do {
System.out.println("Welcome to Hangman!");
System.out.println("Do you want to play?");
userInput = keyboard.next();
if (userInput.equals("Yes") || userInput.equals("yes") || userInput.equals("y") || userInput.equals("Y")) {
done = false;
} else if (userInput.equals("n") || userInput.equals("no") || userInput.equals("NO") || userInput.equals("No")) {
done = true;
}
while (!done) {
System.out.println(getDisguisedWord());
System.out.println("Guess a letter: ");
String guess = keyboard.next();
makeGuess(guess);
if (gameOver()) {
String ui;
System.out.println("Do you want to play again?");
ui = keyboard.next();
if (ui.equals("Yes") || ui.equals("yes") || ui.equals("y") || ui.equals("Y")) {
done = false;
} else {
done = true;
}
}
}
} while(done);
}
我如何能處理好這個任何提示?
您無法在Java中使用'=='來比較字符串,您需要使用.equals()方法。 –
你不需要做'while(done == false)'用'while(done)'來重新設置' –
可能的重複[如何比較Java中的字符串?](http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java) – John3136