我是Java的新手。我现在正在学习我的第一个Java课程。
我正在尝试使用切换指令以外的其他方法重写以下代码。此代码与数独游戏有关。我需要问几次问题,之后我需要根据答案计算统计数据。
请注意我是初学者课程,不能使用高级Java代码。
String response = "Y";
while (response.toLowerCase().equals("y"))
{
System.out.println("Please choose the game level");
System.out.println(" -----------------------------------");
System.out.println(" Enter 1 for Sudoku level Beginner");
System.out.println(" Enter 2 for Sudoku level Advanced");
System.out.println(" Enter 3 for Sudoku level Expert");
System.out.println(" -----------------------------------");
Sudoku = sudoku.nextInt();
if (Sudoku == 1) {
int choice1 = 0;
nbGames_Easy++;
System.out.println("Have you won the game ?");
System.out.print(" Enter 4 for yes ");
System.out.print(" Enter 5 for no ");
choice1 = sudoku.nextInt();
sudoku.nextLine();
switch (choice1)
{
case 4:
nbGamesEasy_Finished++;
successRate_Easy = nbGamesEasy_Finished / nbGames_Easy * 100;
System.out.println("How many time did you take to fill the grid ?");
System.out.println("The time must be in minutes");
String display5 = sudoku.nextLine();
resolutionTime_easy = (nbGamesEasy_Finished * resolutionTime_easy) + Integer.parseInt(display5) / (nbGamesEasy_Finished);
break;
case 5:
successRate_Easy = nbGamesEasy_Finished - 1 / nbGames_Easy * 100;
default:
break;
}
}
}
答案 0 :(得分:2)
对于初学者级别,您可以使用if-else if语句替换switch语句,就像您之前在代码中所做的那样。您可以尝试以下内容:
if (choice1 == 4){
nbGamesEasy_Finished++;
successRate_Easy = nbGamesEasy_Finished / nbGames_Easy * 100;
System.out.println("How many time did you take to fill the grid ?");
System.out.println("The time must be in minutes");
String display5 = sudoku.nextLine();
resolutionTime_easy = (nbGamesEasy_Finished * resolutionTime_easy) + Integer.parseInt(display5) / (nbGamesEasy_Finished);
}
else if (choice1 == 5){
successRate_Easy = nbGamesEasy_Finished - 1 / nbGames_Easy * 100;
}
else {
//default
}
答案 1 :(得分:1)
对于switch语句
{{1}}