作为我的第一个小项目,我正在尝试进行测验。我写了一种方法来摆弄问题和答案,现在我正试图强迫用户输入1或2以继续并循环,而他没有输入。我有点迷失了,我真的缺少一些明显的东西吗?
public static boolean generateQuestion2(String question, String answer1, String answer2) {
boolean bingo;
System.out.println(question);
System.out.println("(1) " + answer1);
System.out.println("(2) " + answer2); //bingo
Scanner scan1 = new Scanner(System.in);
int antwort = scan1.nextInt();
switch (antwort) {
case 1:
System.out.println("Falsch...");
return bingo = false;
case 2:
System.out.println("Richtig!");
return bingo = true;
default:
// Here I intend to loop while antwort != 1 and 2
while (antwort != 1 && antwort != 2) {
System.out.println(" Bitte 1 doer 2 eintippen");
return bingo = false;
}
return bingo = false;
}
}
循环中没有修改antwort
的内容,您需要从scan1
重新读取它。
此外,您无条件地从函数内部返回函数。这将立即返回。