📅  最后修改于: 2023-12-03 15:24:12.488000             🧑  作者: Mango
DefaultTableModel 是 Swing 中用于表格数据的默认实现,它可以让开发人员很方便地添加、修改和删除表格中的数据。如果需要在表格中获取某一列的行总和,可以通过以下步骤实现:
DefaultTableModel model = (DefaultTableModel) table.getModel();
Vector columnData = model.getDataVector().stream().map(row -> row.get(columnIndex)).collect(Collectors.toCollection(Vector::new));
这里的 columnIndex
指的是需要获取行总和的列的索引,可以根据实际需求进行修改。
int sum = columnData.stream().mapToInt(value -> ((Number) value).intValue()).sum();
这里使用了 Java 8 中的流式操作,先将 columnData
中的每个元素转换成 int
类型,然后使用 sum()
方法对它们进行求和。如果该列中可能存在空值,则需要在转换时进行判断和处理。
完整代码如下:
DefaultTableModel model = (DefaultTableModel) table.getModel();
Vector columnData = model.getDataVector().stream().map(row -> row.get(columnIndex)).collect(Collectors.toCollection(Vector::new));
int sum = columnData.stream().mapToInt(value -> ((Number) value).intValue()).sum();
注意事项: