这是我的第一段代码,我的主类。我已经创建了问题数组和对象,这只是为了向大家展示我正在尝试完成的工作。
for(int i = 0; i<questionArray.length; i++)
{
questionArray[i].askQuestion();
questionArray[i].getAnswer();
questionArray[i].checkAnswer();
}
这些是我在上面的循环中使用的方法:
public void askQuestion()
{
System.out.println(question);
System.out.println("This question is worth " + pointValue + " point(s)");
System.out.println("Please enter your answer: ");
}
public String getAnswer()
{
return answer;
}
public boolean checkAnswer()
{
Scanner keyboard = new Scanner(System.in);
String UserAnswer = keyboard.nextLine();
if (UserAnswer.equalsIgnoreCase(answer))
{
System.out.println("congratulations you have earned " + pointValue + " point(s)\n");
return true;
}
else
{
System.out.println("sorry you did not get the answer correct");
System.out.println("The correct answer is " + this.answer + "\n");
return false;
}
}
如您所见,这是一个
TriviaGame
类,1.)我正在尝试制作两种方法,一种能够在每个问题后显示pointValue(仅当用户回答==回答时)。
2)第二个是在用户正确获得答案后将每个pointValue相加(同样,当答案相等时。也称为checkAnswer == true),并在最后显示所有结果。
最佳答案
你的意思是:
int score += pointValue; // note the plus (+)
顺便说一句,考虑将
if (checkAnswer() == true)
更改为if (checkAnswer())