Java 使用JTable正确排序双精度

Java 使用JTable正确排序双精度,java,swing,sorting,jtable,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; }

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

    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。如何解决这个问题?

一些非常好的提示

一些非常好的提示

这方面的关键在于。只需确保第二列实际包含值。可以使用任何一种可用方法使类型显式。

中提供了该方法的键。只需确保第二列实际包含值。可用的任何一种方法都可以用来使类型显式。

尝试使用GlazedList。。它只需要几行代码,而且非常整洁



尝试使用GlazedList。。它只需要几行代码,而且非常整洁