我想在jtable中计算数据,但我有一个错误[Java]

时间:2017-07-09 22:30:42

标签: java swing jtable

我想将第3列与第4列相乘,并将其显示在第一行,但是当我在下一行添加数据时,再次进行计算并在第二行显示时,第一行上的数据线路变化。这是我的代码,有什么不对吗?

public int getCost() {
     int row = showTrans.getRowCount();
     int col = showTrans.getColumnCount();
     int cost;

     for (int i = 0; i < row; i++) {
        cost = Integer.parseInt(showTrans.getValueAt(i, 3).toString()) * 
               Integer.parseInt(showTrans.getValueAt(i, 4).toString());  

        String totalCost = String.valueOf(cost);
        model.setValueAt(totalCost, i, 4);           
     }

    return 0;
}

1 个答案:

答案 0 :(得分:1)

问题是您要重复使用第4列的费用和总费用。

第一次工作是因为成本是正确的(总计= 9460000),但第二次成本是错误的,因为第4列现在是总数。因此,它将数量乘以总成本(总计= 9460000 * 2 = 18920000)

你需要使用一个新列来计算总数,一切都应该没问题。