您如何将JTable中的数据复制到ArrayList中? 我不想要第一行是列名,我想要另一行。谢谢
答案 0 :(得分:0)
首选且强大的方法是使用TableModel。使用JTable.getModel()来获取它。 拥有TableModel之后,您可以使用其API来使用getValueAt(int rowIndex,int columnIndex)知道它在任何位置的值,然后将其存储在List中。
答案 1 :(得分:0)
如果您使用任何对象将数据存储在表中,则只需逐行遍历表并获取每个对象并将其存储在List中。
示例:这是在您使用列表存储数据时。
List<Object> list = new ArrayList<Object>;
for(int row = 0; row < table.getRowCount(); row++) {
for(int column = 0; column = table.getColumnCount(); column++) {
list.add(table.getValueAt(row, column));
}
}
最后,您将获得列表中的所有对象。
修改强>
由于每一行都是CustomObject
类型的对象,我们需要将表的每个值设置为CustomObject
类型的对象,并将其添加到每行的列表中。
class CustomObject {
Object one;
Object two;
}
List<CustomObject> list = new ArrayList<CustomObject>;
for(int row = 0; row < table.getRowCount(); row++) {
CustomObject object = new CustomObject();
for(int column = 0; column = table.getColumnCount(); column++) {
switch(column) {
case 0:
object.setOne(table.getValueAt(row, column));
break;
case 1:
object.setTwo(table.getValueAt(row, column));
break;
}
}
// Store each object in the list.
list.add(object);
}