1.属于不同的包
Comparable属于lang包下的接口
Comparator属于util包下的接口
2.方法不同
Comparable只有一个抽象方法(非静态):
Comparator常用方法(非静态):
3.Collections类(在util包下)
常用方法:
//专门对继承了List接口的类排序
-
-
static void sort(List<T> list, Comparator<? super T> c)
-
4.Integer类(lang包下)
-
-
static int compare(int x, int y)
-
5.总结
sort()方法总结:Collections,Arrays,List,ArrayList里面有sort方法,常用的是Collections,Arrays的sort方法
campare()方法总结:Double,Float,Integer,Long类都有静态的compare方法 (独立的,非继承)和 compareTo方法(重写lang包下的Camparable接口的该方法)
String只有compareTo()方法