JTable怎么存储二维数组
时间: 2023-12-06 13:39:32 浏览: 29
可以使用JTable的构造函数来创建一个JTable对象,该构造函数接受一个二维数组作为数据参数。例如:
```java
Object[][] data = {{"John", 20}, {"Mary", 25}, {"Bob", 30}};
String[] columnNames = {"Name", "Age"};
JTable table = new JTable(data, columnNames);
```
这样就可以创建一个包含三行两列数据的JTable对象,并且可以将其添加到Swing界面中。如果需要更新JTable中的数据,可以使用setValueAt()方法来实现。例如:
```java
table.setValueAt("Tom", 0, 0); // 将第一行第一列的数据修改为"Tom"
```
当然,也可以使用TableModel来管理JTable中的数据。TableModel是一个接口,需要自己实现其中的方法。例如:
```java
public class MyTableModel implements TableModel {
private Object[][] data;
private String[] columnNames;
public MyTableModel(Object[][] data, String[] columnNames) {
this.data = data;
this.columnNames = columnNames;
}
@Override
public int getRowCount() {
return data.length;
}
@Override
public int getColumnCount() {
return columnNames.length;
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
return data[rowIndex][columnIndex];
}
// 其他方法省略
}
```
然后可以将MyTableModel作为参数传递给JTable的构造函数来创建JTable对象。例如:
```java
Object[][] data = {{"John", 20}, {"Mary", 25}, {"Bob", 30}};
String[] columnNames = {"Name", "Age"};
MyTableModel model = new MyTableModel(data, columnNames);
JTable table = new JTable(model);
```
这样就可以创建一个包含三行两列数据的JTable对象,并且可以使用MyTableModel来管理JTable中的数据。