0

嗨,我定义了 2 个列表:

ArrayList<JLabel> questionsList = new ArrayList<JLabel>();
ArrayList<JRadioButton> answersList = new ArrayList<JRadioButton>();

我尝试以如下格式阅读问题和答案:

1st Question 
  answer1
  answer2

2nd Question 
  answer1
  answer2
etc.

所以第一个问题是从列表questionsList中读取的,然后我想从另一个列表answersList中读取该问题的所有答案等等。

在 questionsList 中,我从 mysql 读取数据并将它们保存在 JLabels 中,格式如下:
1.问题一
2.问题
二等

在 answersList 我从 mysql 读取数据,它们以如下格式保存在 JRadioButtons 中:
answer1
answer2

到目前为止我的代码:

    int height = 0;

        for(int i1 =0; i1<questionsList.size(); i1++)
        {   
              client.insideFillPollPanel.add(questionsList.get(i1)).setBounds(20, 20+150*i1, 480, 14);

            height = 20+150*i1;  

            for(int i2 =0; i2<answersList.size(); i2++)
            client.insideFillPollPanel.add(answersList.get(i2)).setBounds(20, 50+30*i2, 480, 14);



        }

我如何解决它以像我展示的第一种格式那样显示问题然后回答问题和回答?

4

1 回答 1

4

我建议您创建一个Question包含问题和属于该问题的所有答案的类,然后,而不是

ArrayList<JLabel> questionsList = new ArrayList<JLabel>();
ArrayList<JRadioButton> answersList = new ArrayList<JRadioButton>();

你用

ArrayList<Question> questions = new ArrayList<Question>();

(作为旁注:针对接口进行编程被认为是一种很好的做法,因此ArrayList<Question>我建议您不要将问题存储在 a 中List<Question>。)


例如:

class Question {

    JLabel questionLabel;
    List<JRadioButton> answers;

    public Question(String q, String... ans) {
        ...
    }
}
于 2012-05-25T15:43:21.627 回答