如果重试=否,或者如果重试=是,我将如何循环回到问题编号1,我将如何遍历代码的开头?对不起,如果这个问题非常愚蠢我就是新编码。这是我目前的代码。
import java.util.Scanner;
public class MainGame {
static Question[] questions = new Question[15];
public static void main(String[] args) {
loadQuestions(); //I found an error in my code were when I printed my questions it printed "null", I fixed that by calling the loadQuestions function.
Scanner kb = new Scanner(System.in);
String userChoice = "", userAnswer = "", retry = "yes";
System.out.println("Welcome to The Not Very Possible Quiz! ");
System.out.println("By: Danny Gill");
do {
System.out.println("Type In 'Play' to start playing, or type in 'Records' to see your high scores from previous games.");
userChoice = (kb.nextLine().toLowerCase());
} while (!(userChoice.equals("play") || userChoice.equals("records")));
if (userChoice.equals("records")) {
System.out.println("High Scores:");
} else if (userChoice.equals("play")) {
System.out.println("Get Ready!");
System.out.println(questions[0]);
userAnswer = (kb.nextLine().toLowerCase());
if (userAnswer.equals("a")) {
System.out.println(questions[1]);
} else System.out.println("Wrong!");
do {
System.out.println("\n" + "Do you want to play again?");
retry = (kb.nextLine()).toLowerCase();
} while (!(retry.equals("yes") || retry.equals("no")));
} while (retry.equals("yes"));
}
public static void loadQuestions() {
questions[0] = new Question("Which concert is the cheapest?", "50 Cent", "Drake", "Rihanna", "2-Pac");
questions[1] = new Question("Who was the first president of the USA?", "Donald Trump", "John Adams", "George Washington", "George W. Bush");
questions[2] = new Question("Which country has the largest military?", "United States", "India", "China", "North Korea");
questions[3] = new Question("In Hockey how many players are on the ice for each team?", "6", "5", "7", "4");
questions[4] = new Question("What is Canada's national sport?", "Lacrosse", "Hockey", "Basketball", "Soccer");
questions[5] = new Question("Who was the first prime minister of Canada?", "Lester B. Pearson", "Stephen Harper", "John A. Macdonald", "Alexander Mackenzie");
questions[6] = new Question("What is the largest city in Canada?", "Calgary", "Toronto", "Montreal", "Vancouver");
questions[7] = new Question("How many continents are there?", "5", "6", "7", "8");
questions[8] = new Question("What is Pakistan's currency?", "Euro", "Dollar", "Rupee", "Yen");
questions[9] = new Question("Who is currently the richest person on Earth?", "Bill Gates", "Elon Musk", "Jeff Bezos", "Mark Zuckerberg");
questions[10] = new Question("Which planet is nearest to the sun?", "Earth", "Mercury", "Venus", "Saturn");
questions[11] = new Question("Who invented Ferrari?", "Sergio Marchionne", "Endo Ferrari", "Enzo Ferrari", "Bill Ferrari");
questions[12] = new Question("Who painted the Mona Lisa?", "Pablo Picasso", "Leonardo Who Cares", "Leonardo DiCaprio", "Leonardo Da Vinci");
questions[13] = new Question("In what year was Google launched on the web?", "1998", "2000", "1997", "1990");
questions[14] = new Question("How often are the olympics held?", "3 Years", "4 Years", "5 Years", "2 Years");
}
}
答案 0 :(得分:0)
在你的游戏"第一部分我将使用for循环。如果用户回答是假的,你问他是否要重复。
如果他说"是",则再次将i
设置为0。
for(int i=0; i<=questions.length; i++) {
// Ask questions[i]
// IF answer is okay THEN continue;
// ELSE ask IF user wants to restart
// IF yes THEN i=0
// IF ``no THEN break
}
提示:实施一种方法以获得正确的答案并比较Question
课程中的答案。
答案 1 :(得分:0)
您还可以使用 中断 来跳转代码的某些部分
示例:
**search:**
for (i = 0; i < arrayOfInts.length; i++) {
for (j = 0; j < arrayOfInts[i].length;
j++) {
if (arrayOfInts[i][j] == searchfor) {
foundIt = true;
**break search;**
}
}
}