1、Comparator 和 Comparable 的区别
Comparator 和 Comparable都是java的接口,用来比较自定义的class
- Comparator(外部比较器)
覆写compare()方法
Pserson类:
public class Person{}
定义一个比较器类:
public PersonComparator implements Comparator {}
把要排列的Person保存在List类集或数组当中当中
Pserson[] arr={pserson1,new pserson2,new pserson3};
List list=new ArrayList();
list.add(pserson1);
list.add(pserson2);
list.add(pserson3);
调用sort方法有两种方式:
Collections.sort( list, new PersonComparator() )
Array.sort(arr, new PersonComparator())
此时list或arr中的元素已经排列完成,直接输出arr或list即可
- Comparable(内部比较器)
覆写compareTo()方法
Comparable 实现