我想出了这个循环:

    for(int i = 0; i < memberArrayList.size(); i++){
        int j = 0;
        memberTable.setValueAt(memberArrayList.get(i).getFirstName(), i, j);
        j++;
        memberTable.setValueAt(memberArrayList.get(i).getLastName(), i, j);
        j++;
        memberTable.setValueAt(memberArrayList.get(i).getEmail(), i, j);
        j++;
        memberTable.setValueAt(memberArrayList.get(i).getPhoneNumber(), i, j);
        j++;
        memberTable.setValueAt(memberArrayList.get(i).getLevel(), i, j);
    }


它有效,但是我敢肯定有更好的方法

最佳答案

答案将取决于您使用的TableModel类型,例如,如果您使用的是DefaultTableModel,则可以使用类似...的方法。

DefaultTableModel memberTable= ...;

for(int i = 0; i < memberArrayList.size(); i++){
    Object[] rowData = new Object[]{
        memberArrayList.get(i).getFirstName(),
        memberArrayList.get(i).getLastName(),
        memberArrayList.get(i).getEmail(),
        memberArrayList.get(i).getPhoneNumber(),
        memberArrayList.get(i).getLevel()
        };
    memberTable.addRow(rowData);
}


假设您只想向表模型的末尾添加行;)

就个人而言,我宁愿将每个成员作为单个实体添加到表模型中,但这仅仅是我个人

请查看How to Use Tables了解更多详细信息...

10-04 12:01