1 两个接口都是实现了集合元素的比较和排序。
2 Comparable接口是内部比较器,即将比较器写在类中,类实现了Comparable 接口 需要重写 CompareTo()方法[单例模式的类不能进行排序]
public int compareTo(T o);
比较结果:如果调用比较器方法的对象>指定对象 返回 正整数
如果调用比较器方法的对象<指定对象 返回 负整数
如果调用比较器方法的对象=指定对象 返回 0
Comparator 是外部比较器,比较器写在类的外边,需要创建一个新类实现Comparator接口,重写Compare 方法。
int compare(T o1, T o2);
比较结果: 如果01 >02 返回正整数
如果o1 < o2 返回负整数
如果o1 = o 2 返回 0
使用:
Comparable接口,内部实现,体现了高内聚。但是如果进行修改的话,就比较麻烦。