我正在用gui写二进制文件对象,当我在表中列出它们时只出现一行like this 并非所有数据都有吸引力 这是列出的代码
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
Object rowData[] = new Object[5];
model.setRowCount(0);
Apparels a = new Apparels();
ArrayList<Apparels> app = new ArrayList<Apparels>();
app = a.listApparels();
for (Apparels x : app) {
rowData[0] = x.getStockid();
rowData[1] = x.getPricePerItem();
rowData[2] = x.getQuantity();
rowData[3] = x.getType();
rowData[4] = x.getCateogryname();
model.addRow(rowData);
}
答案 0 :(得分:1)
您重新使用rowData
来填充属性,这意味着对于每一行,它将具有相同的数据
也许尝试使用更像......
的东西for (Apparels x : app) {
Object rowData[] = new Object[5];
rowData[0] = x.getStockid();
rowData[1] = x.getPricePerItem();
rowData[2] = x.getQuantity();
rowData[3] = x.getType();
rowData[4] = x.getCateogryname();
model.addRow(rowData);
}
主要问题是,对rowData
的引用永远不会改变,但每个元素的内容都会改变,所以一旦你完成了循环,模型就会有一个所有指向同一个的引用列表rowData
的实例