我正在开发测验应用程序,我想找到一种有效的方法来保存用户的答案。

每个测验有30个问题,我需要保存的是:
questionNumberquestionIdanswerId,答案是否正确。

我认为数组将是一个很好的解决方案。例:



每行代表一个问题(questionNumber)。第一列代表questionId,第二列代表answerId。第三列将包含0(不正确)或1(正确)。

需要第三列(正确)来汇总正确答案的数量(汇总第三列而不是随时检查每个答案更快)。

这不是SQL表-该信息是临时的,用户完成测验后将立即销毁。

我想知道您是否还有其他解决方案,也许更好。

谢谢!

最佳答案

为什么不上课?

class Answer
{
    private int questionID;
    private int answerID;
    private boolean correct;

    public Answer(int questionID, int answerID, boolean correct)
    {
        this.questionID = questionID;
        this.answerID = answerID;
        this.correct = correct;
    }
}


还有一个ArrayList

List<Answer> answers = new ArrayList<Answer>();


然后使用

Answer answer = new Answer(1, 2, true);
answers.add(answer);


使用数组时,每次使用ArrayList添加问题时,都需要修复数组大小,而无需考虑数组大小,就可以添加任意数量的问题。

无论如何,如果您的问题总是30个,那么您也可以创建一个没有问题的数组。

关于表演,我看不到关于速度/记忆的问题。

关于java - 存储临时QuestionID-AnswerID数据的最佳方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22895270/

10-10 11:17