comparable&Comparator
概述:
本文记录:
- Comparable接口的介绍和使用
- Comparator接口的介绍和使用
- 两个接口的比较
一、Comparable接口的介绍和使用
1、基本介绍
JAVA中基本数据类型(int)等可以进行比较和排序,那么对象数据类型是否可以进行排序呢?答案是肯定的。
- Comparable接口可以强行对实现它的 每个类的对象进行整体排序。
- 实现此接口的对象列表(和数组)可以通过 Collections.sort (和 Arrays.sort )进行自动排序。
- 实现此接口的类需要复写compareTo()方法。
例:
1 | public class Person implements Comparable<Person>{//实现接口 |
1 | //测试代码 |
二、Comparator接口的介绍和使用
例:Comparator实现
1 |
|
1 | public class TestComparator { |
三、两个接口的比较
- Comparator位于包java.util下,而Comparable位于包java.lang下
- Comparable定义在模型的内部,而Comparator实现在模型外部
- Comparable覆盖compareTo()方法,Comparator覆盖compare()方法