如何在循环中删除JTable的所有行?

时间:2015-08-19 06:02:40

标签: java swing jtable row

我正在尝试在执行操作时删除JTable的所有行。

我在下面写了代码:

DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
    int rowCount = model.getRowCount();
    for (int i = 0; i < rowCount ; i++){
        model.removeRow(i);
    }

但它没有像我预期的那样奏效。

2 个答案:

答案 0 :(得分:3)

每次删除行时,行数都会更改。最好继续循环直到没有行

synced folder

现在,如果我没有错,你也可以while (model.getRowCount() > 0) { model.removeRow(0); } ,它会为你删除所有行;)

答案 1 :(得分:2)

我在网上搜索并发现我们应该从表​​的末尾而不是从开头删除表的行。我想与其他人分享这些信息。

DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
    int rowCount = model.getRowCount();
    for (int i = rowCount; i > 0 ; i--){
        model.removeRow(i-1);
    } 

它适合我。祝好运。