jtable获取选中行数据
时间: 2023-08-29 07:13:07 浏览: 73
### 回答1:
好的,关于jtable获取选中行数据,可以使用以下代码:
```
int selectedRow = jtable.getSelectedRow();
String value1 = jtable.getModel().getValueAt(selectedRow, 0).toString();
String value2 = jtable.getModel().getValueAt(selectedRow, 1).toString();
```
其中,`selectedRow` 是获取被选中的行数,`value1` 和 `value2` 是获取该行的第一列和第二列数据。
### 回答2:
在使用JTable时,我们可以通过以下步骤来获取选中行的数据:
1. 首先,我们需要获取JTable的模型(TableModel),可以通过getTable()方法来获得。
2. 接下来,我们可以通过getSelectedRows()方法来获取选中的行的索引数组。
3. 然后,我们可以使用for循环遍历选中的行索引数组,依次获取每一行的数据。
4. 最后,我们可以通过getValueAt()方法来从模型中获取每个单元格的数据,并将其存储到一个二维数组或集合中。
下面是一个示例代码:
```java
JTable table = new JTable(); // 假设有一个JTable对象
// 获取JTable的模型
TableModel model = table.getModel();
// 获取选中的行的索引数组
int[] selectedRows = table.getSelectedRows();
// 创建一个二维数组,用于存储选中行的数据
Object[][] selectedData = new Object[selectedRows.length][model.getColumnCount()];
// 遍历选中的行索引数组
for (int i = 0; i < selectedRows.length; i++) {
// 获取每个单元格的数据,并存储到二维数组中
for (int j = 0; j < model.getColumnCount(); j++) {
selectedData[i][j] = model.getValueAt(selectedRows[i], j);
}
}
// 打印选中行的数据
for (int i = 0; i < selectedData.length; i++) {
for (int j = 0; j < selectedData[i].length; j++) {
System.out.print(selectedData[i][j] + " ");
}
System.out.println();
}
```
通过以上步骤,我们可以获取到选中行的数据,并根据实际需求进行相应的处理。