【发布时间】:2015-03-13 22:19:37
【问题描述】:
Java Arraylist 有一个问题:当我单击上一个按钮时,它不会获得最后一个元素的索引。
注意:InfoStudent 是一个单独的类,其中包含所有学生信息,例如 id、姓名和电子邮件;并且 arraylist student 包含新学生的信息。我不确定我的问题是否是像 student.get 这样的索引(获取当前学生的 id 和负 1,因为索引从 0 开始)。我的截图:
我的代码:
JButton btnFirst = new JButton("First");
btnFirst.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textFieldId.setText(Integer.toString(student.get(0).getId()));
textFieldName.setText(student.get(0).getName());
txtEmailbox.setText(student.get(0).getEmail());
}
});
btnFirst.setBounds(10, 215, 89, 22);
frame.getContentPane().add(btnFirst);
JButton btnPrev = new JButton("Prev");
btnPrev.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
current = Integer.parseInt(textFieldId.getText());
if(current== student.size()){
current= 0;
}
else {
current = current-1;
}
textFieldId.setText(Integer.toString(student.get(current).getId()));
textFieldName.setText(student.get(current).getName());
txtEmailbox.setText(student.get(current).getEmail());
//student.get(current).getId() is not working
}
});
btnPrev.setBounds(122, 215, 89, 22);
frame.getContentPane().add(btnPrev);
JButton btnNext = new JButton("Next");
btnNext.setBounds(230, 215, 89, 23);
frame.getContentPane().add(btnNext);
JButton btnLast = new JButton("Last");
btnLast.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textFieldId.setText(Integer.toString(student.get(student.size()-1).getId()));
textFieldName.setText(student.get(student.size()-1).getName());
txtEmailbox.setText(student.get(student.size()-1).getEmail());
}
});
btnLast.setBounds(329, 215, 89, 23);
frame.getContentPane().add(btnLast);
}
【问题讨论】:
-
如果 current=0 (
current = current -1;) 怎么办?您还应该解决这种情况。 -
您发布的代码中没有
ArrayList甚至没有List接口。