Java 如何在不使用嵌套if-else的情况下实现游戏中的机会数
我正在开发一个学校作业java多选游戏,在这个游戏中,你必须给用户一些正确回答的机会 我的问题是,如果不在游戏中使用一组嵌套的if-else if,那么最简单的方法是什么才能让游戏正常工作,以及它应该如何工作Java 如何在不使用嵌套if-else的情况下实现游戏中的机会数,java,Java,我正在开发一个学校作业java多选游戏,在这个游戏中,你必须给用户一些正确回答的机会 我的问题是,如果不在游戏中使用一组嵌套的if-else if,那么最简单的方法是什么才能让游戏正常工作,以及它应该如何工作 或者,如果答案数量固定,则可以使用数组 您可以做的一件事是编写一个while循环,如下所示: int tries = 0; boolean isCorrect = false; while(tries++ < 10 || !isCorrect) { System.out.pr
或者,如果答案数量固定,则可以使用数组 您可以做的一件事是编写一个while循环,如下所示:
int tries = 0;
boolean isCorrect = false;
while(tries++ < 10 || !isCorrect) {
System.out.println("Chance #" + tries);
final Scanner scanner = new Scanner(System.in);
isCorrect = evaluateAnswer(scanner.nextLine());
}
int=0;
布尔值isCorrect=false;
while(尝试+++<10||!isCorrect){
System.out.println(“Chance#”+tries);
最终扫描仪=新扫描仪(System.in);
isCorrect=evaluateAnswer(scanner.nextLine());
}
这样,尝试次数从1开始,而不是从0开始。但是,如果您想添加多个问题,则需要将其循环。切换案例陈述将是最合适的方法 我从Oracle文档()中选取了以下示例: 注意:曾经有一段时间switch语句无法处理字符串。但JDK1.7中的情况发生了变化 编辑: 当然,switch case语句必须由一个循环包围。为此,您有几个选项
int attemps = 0;
boolean correct = false;
do{
correct = evalTheAnswers();// évaluate the answers
attemps++;
}while(!correct || attemps < attempsLimit);
int attemps=0;
布尔正确=错误;
做{
correct=evalTheAnswers();//评估答案
attemps++;
}而(!correct | | attemps
我建议通过微程序和ikken组合答案,即一个while循环,检查尝试次数和答案是否正确。执行while
可能是一个好主意,这取决于您的程序的工作方式。我的意思是取决于其余代码的外观。是否使用while或边做边做
。
int attemps = 0;
boolean correct = false;
do{
correct = evalTheAnswers();// évaluate the answers
attemps++;
}while(!correct || attemps < attempsLimit);