Java 无法确定如何在增量循环中获取每个答案

Java 无法确定如何在增量循环中获取每个答案,java,Java,我正在编写一个选择题测验 我将问题作为对象,每个问题都包含在一个数组中。 这是我的密码。 每个对象都有名称q1、q2等 for(int i = 0; i < questions.length; i++) { System.out.println(questions[i]); choice = kb.nextLine(); if(choice.equals(q1.getCorrectAns())) { correct++; } } 下面是对象构造

我正在编写一个选择题测验

我将问题作为对象,每个问题都包含在一个数组中。 这是我的密码。 每个对象都有名称q1、q2等

for(int i = 0; i < questions.length; i++) 
{
   System.out.println(questions[i]);
   choice = kb.nextLine();
   if(choice.equals(q1.getCorrectAns()))
   {
      correct++;
   }
}
下面是对象构造函数的问题

public Question(String question, String optionA, String optionB, String optionC, String optionD, String correctAns)
{
    this.question = question;
    this.optionA = optionA;
    this.optionB = optionB;
    this.optionC = optionC;
    this.optionD = optionD;
    this.correctAns = correctAns;
}

编辑:我的数组只包含三个问题。如何随机打印每个问题?

执行此操作时,您已经正确地迭代了这些问题:
System.out.println(问题[I])-您也只需要在答案比较中这样做

具体来说,与其检查
if(choice.equals(q1.getCorrectAns())
,不如检查
if(choice.equals(问题[i].getCorrectAns())


作为注释,您可能需要考虑更改问题输出,以执行诸如<代码> Stuto.Out.PrtLn(问题[I]。GEATIOMQUEST)];code>,因此您不需要重写

Question.toString()
,只输出问题。

能否显示
getCorrectAns
方法?您已经创建了一个问题数组,因此可以创建一个答案数组来匹配这些问题。当您发现自己创建了名为
q1
q2
的变量时,etc-您应该真正使用数组代替标题,我希望能够从数组中访问对象的答案字段共享您创建
问题[]和
q1,…
public Question(String question, String optionA, String optionB, String optionC, String optionD, String correctAns)
{
    this.question = question;
    this.optionA = optionA;
    this.optionB = optionB;
    this.optionC = optionC;
    this.optionD = optionD;
    this.correctAns = correctAns;
}