假设我有一个包含如下行的 JTable:
(2, 1)
(1, 3)
(1, 5)
(3, 1)
(2, 3)
(2, 4)
我想对 JTable 进行排序,以便第一列或第二列中具有 1 的行位于顶部,其余行可以具有任意顺序:
(1, 3)
(1, 5)
(2, 1)
(3, 1)
(2, 3)
(2, 4)
有没有办法用 TableRowSorter
在表格中做到这一点?
UPD:我想以编程方式对表格进行排序,而不是通过 UI(单击列标题)
最佳答案
您可以使用 setComparator
方法为第一列定义一个 Comparator
。然后,在 Comparator
的 compare
方法中,如果第一个参数是 1,则返回 -1
,如果是,则返回 1
第二个参数是 1
,否则是 0
。
关于java - 如何在两列上对 JTable 进行排序,以便带有 "1"的项目位于顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9637331/