您好我已定义了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读取数据,它们以如下格式保存在JLabel中:
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);
}
我如何解决它显示像第一种格式我显示如此问题然后asnwers问题和asnwers?
答案 0 :(得分:4)
我建议你创建一个Question
课程,其中包含问题和属于该问题的所有答案,然后,而不是
ArrayList<JLabel> questionsList = new ArrayList<JLabel>();
ArrayList<JRadioButton> answersList = new ArrayList<JRadioButton>();
您使用
ArrayList<Question> questions = new ArrayList<Question>();
(作为附注:对接口进行编程被认为是一种好习惯,所以不要将问题存储在ArrayList<Question>
中,而是建议您选择List<Question>
。
例如:
class Question {
JLabel questionLabel;
List<JRadioButton> answers;
public Question(String q, String... ans) {
...
}
}