該代碼用于多項選擇題。如果答案不正確,用戶應嘗試直到找到正確答案。答案正確時沒有問題,但如果錯誤則卡住,并一直說“您的答案不正確!”。我該怎么辦?
import java.util.*;
public class Question {
public static void main(String[] args) {
System.out.println();
System.out.println("Question 1");
System.out.println();
System.out.println("What is 2 2?");
System.out.println("A. 2");
System.out.println("B. 4");
System.out.println("C. 6");
System.out.println("D. 8");
Scanner input = new Scanner(System.in);
char getAnswerFromUser = input.next().charAt(0);
char answer = 'B';
boolean isAnswerTrue = false;
while(!isAnswerTrue) {
if(getAnswerFromUser == answer ) {
System.out.println("Your answer is correct!");
isAnswerTrue = true;
} else{
System.out.println("Your answer is incorrect!");
isAnswerTrue = false;
}
}
}
}
uj5u.com熱心網友回復:
您實際上并沒有從回圈內的用戶那里得到新的答案。您只能在定義變數 getAnswerFromUser 的行中獲得一次。你實際上需要得到一個新的答案。我建議將其放入單獨的方法中,以使該步驟與您使用該答案的步驟保持清潔。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/446333.html
