如何为 JTable 中的特定列设置自定义比较器?
我的表的第三列包含双精度值的字符串表示形式,我想为该列创建一个比较器,以便当我单击该列的标题时,它将根据该比较器进行排序。
第一个问题是,如果您正在管理双打,为什么您正在处理字符串。如果您使用双精度数并仅在 CellRenderer 中为该列设置格式,效果应该会更好。
无论如何,您正在寻找的可能是这样的:http://download.oracle.com/javase/tutorial/uiswing/examples/components/TableSorterDemoProject/src/components/TableSorter.java http://download.oracle.com/javase/tutorial/uiswing/examples/components/TableSorterDemoProject/src/components/TableSorter.java
编辑:如果不知何故从 Double 到您的表示形式的转换很复杂,我会创建一个包含 Double 数字和 String 表示形式的 Comparable 类。 Equals()、hashcode() 和 CompareTo() 将使用 double 的值来实现; cellRenderer() 和 toString() 将使用字符串表示形式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)