Java java.util 包核心类与接口深度解析
1. java.util.Comparator<T>
java.util.Comparator<T> 接口自 Java 1.2 版本引入,其核心作用是为一组对象定义排序规则。当对象本身没有实现 Comparable 接口定义自然排序,或者需要自定义排序规则时, Comparator 就派上用场了。在 Java 5.0 中,该接口被泛型化,类型变量 T 代表被比较对象的类型。
compare() 方法是 Comparator 接口的关键,它接收两个对象作为参数,并根据以下规则返回整数值:
- 若第一个参数小于第二个参数,或者在排序列表中应排在第二个参数之前,返回负整数。
- 若第一个参数大于第二个参数,或者在排序列表中应排在第二个参数之后,返回正整数。
- 若两个对象等价,或者它们在排序列表中的相对位置无关紧要,返回 0。
需要注意的是, compare() 方法返回值的大小并不重要,重要的是其正负性。在大多数情况下,应实现 Comparator 使得 compare(o1, o2) 返回 0 当且仅当 o1.equals(o2) 返回 true ,这在使用 Comparator
Java java.util包核心类与接口深度解析
超级会员免费看
订阅专栏 解锁全文
1001

被折叠的 条评论
为什么被折叠?



