Java 对非';t显示

Java 对非';t显示,java,swing,jtable,Java,Swing,Jtable,我有一个具有多个列的JTable,其中一列包含一个人的年龄,但如果是该人的出生日期,则会显示为“20(+1)”,因此此列来自类型字符串 这会导致在对JTable进行排序时出现问题,因为您将按照以下顺序对其进行排序: 2. 21 24 3. 34 38 5. 六十 虽然我想基于person age值存储它,该值存储为persons对象中的整数,其顺序如下: 2. 3. 5. 21 24 34 38 六十 当然,我可以删除“(+1)”部分,但这是一个很好的特性,表明该单元格中的值已更改 不确定是否有

我有一个具有多个列的JTable,其中一列包含一个人的年龄,但如果是该人的出生日期,则会显示为“20(+1)”,因此此列来自类型字符串

这会导致在对JTable进行排序时出现问题,因为您将按照以下顺序对其进行排序: 2. 21 24 3. 34 38 5. 六十

虽然我想基于person age值存储它,该值存储为persons对象中的整数,其顺序如下: 2. 3. 5. 21 24 34 38 六十

当然,我可以删除“(+1)”部分,但这是一个很好的特性,表明该单元格中的值已更改

不确定是否有解决此问题的方法,因为我可能使用了“错误”列

谢谢

根据

TableRowSorter分拣机=新的TableRowSorter分拣机
TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel(table.getModel());
table.setRowSorter(sorter);
Comparator<String> comparator = new Comparator<String>() {
    public int compare(String s1, String s2) {
        return Integer.valueOf(s1).compareTo(Integer.valueOf(s2));
    }
};