java如何反复提问,直到我作为一个角色得到正确的答案
我应该问“choose”,用户应该键入a、b或c。如果他键入了其他内容,它应该重复这个问题。我甚至不明白我是如何做到这一点的,然后我又遇到了另一个问题:以后我应该打印出所选的咖啡,但因为“eingabe”是在一段时间后出现的,或者如果我想以后使用它时无法识别它。我如何解决这个问题?还是我应该使用另一个循环?这里使用的字符类型是否正确? Thx提前
while(eingabe != 'a' || eingabe != 'b' || eingabe ||'c') {
Out.println("Bitte auswaehlen: ");
char eingabe = in.readChar();
}
Out.print("Gewaehlt ");
if (eingabe == 'a') Out.print("CAPPUCCINO");
if (eingabe == 'b') Out.print("MOKKA");
if (eingabe == 'c') Out.print("VERLAENGERTER");
Out.print(" !");
}
# 1 楼答案
我认为你的表达式中有一个问题。也许你的意思是
eingabe != 'a' || eingabe != 'b' || eingabe != 'c'
。我认为,为了在用户键入其他内容时继续循环,您需要使用&&
而不是||
。do while循环非常适合您的用例:# 2 楼答案
您的
eingabe
变量应该在循环之外定义,以便代码的其余部分可以访问它。只是要小心不要用条件中检查的值初始化它,或者最好使用do while我把你的密码换成了常规系统。在和系统中。出去,因为我不知道那些进进出出的是什么。最后但并非最不重要的一点是,您的输出条件是错误的,您应该再次询问该值是否与所有预期值不同,而不是是否与任何预期值不同(这总是正确的):
# 3 楼答案
如前所述,您应该在循环之外声明它。当检查c时,您在循环中输入错误: