概述
介绍
提供的比较器
版本比较器
// 1.2.1 < 1.12.1
VersionComparator.INSTANCE.compare("1.2.1", "1.12.1");
// 1.12.1 < 1.12.1c
VersionComparator.INSTANCE.compare("1.12.1", "1.12.1c");
// V0.0.20170102 > V0.0.20170101
VersionComparator.INSTANCE.compare("V0.0.20170102", "V0.0.20170101");
其它比较器
ReverseComparator
反转比较器,排序时提供反序VersionComparator
版本比较器,支持如:1.3.20.8,6.82.20160101,8.5a/8.5c等版本形式PropertyComparator
Bean属性比较器,通过Bean的某个属性来对Bean对象进行排序IndexedComparator
按照数组的顺序正序排列,数组的元素位置决定了对象的排序先后ComparatorChain
比较器链。此链包装了多个比较器,最终比较结果按照比较器顺序综合多个比较器结果。PinyinComparator
按照GBK拼音顺序对给定的汉字字符串排序。比较工具-CompareUtil.md
介绍
在JDK提供的比较器中,对于null
的比较没有考虑,Hutool封装了相关比较,可选null是按照最大值还是最小值对待。
// 当isNullGreater为true时,null始终最大,此处返回的compare > 0
int compare = CompareUtil.compare(null, "a", true);
// 当isNullGreater为false时,null始终最小,此处返回的compare < 0
int compare = CompareUtil.compare(null, "a", false);