Comparable比较器实现类的自定义升/降排序

1,基本规则

1.0  let your class implements Comparable interface , override  method : int compareTo(Object another)

1.1 升序 obj1 > obj2 return 正数

    obj1 == obj2 return 0

    obj1 < obj2 return 负数

1.2 降序 与升序相反

1.3 if class already implements Comparable interface,用Collections类的sort方法排序时定义的比较算法即生效,也可调用: public static <T> void sort(List<T> list, Comparator<? super T> comparator),传入一个Comparator进行自定义排序

 

2,Comparable和Comparator区别

2.0 前者compareTo只有一个参数,是让类的内部元素跟参数作比较的 : int compareTo(Object another)

  后者有两个参数,是在外部比较的 : int compare(T lhs, T rhs);

2.1 position :

  Comparable : java.lang

  Comparator : java.util

 

posted @ 2016-04-23 22:59  superleeq  阅读(489)  评论(0)    收藏  举报