将数据从列表传递到Object [] []

时间:2014-12-30 13:58:00

标签: java swing list jtable tablemodel

我得到的这个列表包含了我从文件中获得的一些数据。

List<String> destinationList = new ArrayList<String>();

然后我有一个JTable,我想将列表中的数据传输到。我看到了一个关于如何将数据输入JTable的示例:

Object[][] data = {
    {"Kathy", "Smith",
         "Snowboarding", new Integer(5), new Boolean(false)},
    {"John", "Doe",
         "Rowing", new Integer(3), new Boolean(true)},
    {"Sue", "Black",
         "Knitting", new Integer(2), new Boolean(false)},
    {"Jane", "White",
         "Speed reading", new Integer(20), new Boolean(true)},
    {"Joe", "Brown",
         "Pool", new Integer(10), new Boolean(false)}
};

我想知道我是否能以某种方式将我的列表中的数据传递到Object [] []数据中,以便我可以将其传输到我的JTable中。提前谢谢!

1 个答案:

答案 0 :(得分:3)

  

我想知道我是否能以某种方式将我的列表中的数据传递到Object [] []数据中,以便我可以将其传输到我的JTable中。

我建议你:

,而不是浪费一分钟来尝试这样做
  1. 创建一个以OO方式包装该信息的bean类(即: Contact)。
  2. 转换列表中Contact个对象中的每个字符串。也许String#split() 可能有助于将领域分开。
  3. 使用比DefaultTableModel更复杂的表模型,允许您直接使用bean (对象)。像DataObjectTableModel或Rob Camick那样的东西 RowTableModel / ListTableModel / BeanTableModel
  4. 将列表设置为表模型中的基础数据。
  5. 这种方法可以节省您的时间,例如,当您想要使用所选的联系人信息时。更糟糕的是,就OOP而言,这是一种比使用数组更好的做法。