编辑:非常感谢我的程序终于运行了。
我编辑了 addChoice 的代码,让它读取一串连接的数字和空格;我还修改了 checkanswer 方法,但每当我输入正确答案时,它仍然算错,以下是我的代码
public void addChoice(String choice, boolean correct){
super.addChoice(choice, correct);
if(correct == true){
count++;
choiceString += "" + count+" " ;
answers.add(choiceString);
}
super.setAnswer(choiceString.trim());
}
public boolean checkAnswer( String response )
{
super.checkAnswer(response);
boolean ok = false;
response = response.trim();
String correctAnswers [] = response.split(" ");
for(int i=0; i<correctAnswers.length;i++){
if (answers.contains(correctAnswers[i]))
{ ok = true;}
else
{ ok=false;}
}
return ok;
}
我的问题:
对于我的问题,第一个和第二个选项是正确的。因此,他/她可以输入 1 或 2 或 1 2 或 2 1 以便他/她在问题上获得满分;当我键入除上面列出的选项之外的任何其他选项时,我应该恢复一个零。所以我的问题是我的检查答案方法总是出于某种原因返回 true,所以无论我输入什么,即使我输入了错误的答案,它也会将其视为 true。所以,我需要这部分的帮助。
谢谢