Java实现.net DataTable模型
时间: 2023-05-27 19:03:32 浏览: 179
Java中没有 DataTable 类,但是可以使用 Java 中的类来实现类似 DataTable 的数据模型。其中最常用的类是 ArrayList 和 HashMap。
以下是一个简单的示例:
```java
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class DataTable {
private List<Map<String, Object>> rows;
private String[] columns;
public DataTable(String[] columns) {
this.columns = columns;
this.rows = new ArrayList<>();
}
public void addRow(Object[] rowData) {
Map<String, Object> row = new HashMap<>();
for (int i = 0; i < rowData.length; i++) {
String columnName = this.columns[i];
Object columnValue = rowData[i];
row.put(columnName, columnValue);
}
this.rows.add(row);
}
public List<Map<String, Object>> getRows() {
return this.rows;
}
public String[] getColumns() {
return this.columns;
}
public int getRowCount() {
return this.rows.size();
}
public Object getValue(int rowIndex, String columnName) {
Map<String, Object> row = this.rows.get(rowIndex);
return row.get(columnName);
}
public void setValue(int rowIndex, String columnName, Object value) {
Map<String, Object> row = this.rows.get(rowIndex);
row.put(columnName, value);
}
}
```
这个类使用 List<Map<String, Object>> 存储数据行,其中每个 Map 表示一行数据,其中 key 为列名,value 为列值。addRow() 方法通过将 rowData 转换为 Map 来添加新的行,getValue() 和 setValue() 方法利用 Map 的 get() 和 put() 方法获取和设置列值。
阅读全文