在JTable中显示HashTable数据?

时间:2014-03-27 07:15:44

标签: java swing jtable hashtable

我有一个哈希表

hashtable c = new Hashtable();

Employee emp = new Employee("E1001","Sky");
c.put("E1001",emp);

然后我有一个JTable

Object[][] data = {

                {"", ""},

        };

String[] headers = {"Employee Code", "Employee First Name"};
JTable table = new JTable(data, headers);

我似乎无法弄清楚如何将hashtable项添加到JTable

1 个答案:

答案 0 :(得分:1)

如果我正在读这个,那就像......

Object[][] data = new Object[c.size()][2];
int row = 0;
for (Object key : c.keySet()) {
    data[row][0] = key;
    Employee emp = (Employee)c.get(key);
    data[row][1] = ...; // Get name from Employee object...
    // Personally, I prefer to assign the Employee object to
    // the column of the row and use a TableCellRenderer to
    // renderer it
}

String[] headers = {"Employee Code", "Employee First Name"};
JTable table = new JTable(data, headers);

应该工作......

现在,如果您希望HashMapTableModel之间建立更强的关系(这样您可以向表中添加内容并更新HashMap),那么您将会需要使用AbstractTableModel并亲自动手绘制模型要求与HashMap

之间的内容