使用JTable正确排序双精度数

时间:2010-07-17 21:28:45

标签: java swing sorting jtable

我有一个表,其中第一列包含字符串,第二列包含双精度。

    stars = new StarDatabase(path);
    Object[][] data = new Object[stars.size()][2];
    int i = 0;
    for (String name : stars.keySet()) {
        data[i][0] = name;
        data[i++][1] = stars.get(name).period;
    }
    StarsTable = new JTable(data, StarsColumnNames);
    StarsTable.setAutoCreateRowSorter(true);

双打被排序为字符串,因此1< 15< 2< 25< 3.我该如何解决这个问题?

3 个答案:

答案 0 :(得分:5)

关键是How to Use Tables—Concepts: Editors and Renderers。只需确保您的第二列实际包含Double值。可以使用任一可用的valueOf()方法使类型明确。

答案 1 :(得分:1)

一些非常好的提示here

答案 2 :(得分:1)

尝试使用GlazedList ..它只需要几行代码并且非常整洁。Glazedlist


相关问题