Comparable
- 引用数据类型想比较大小必须实现Comparable接口,
重写compareTo方法,自己制定比较规则
Comparator
-
函数式接口,可以灵活制定排序规则
Comparable和Comparator的区别 一个类既可以实现Comparable接口也可以实现Comparator接口。 如果希望一个类的比较方式有很多种,而且比较方式具有外部扩展性, 那么可以实现Comparator接口,如果一个类默认的实现了Comparable接口, 而你又希望再定义一个比较规则,那么你不可能去修改原类,因为这样会 破坏封闭开放原则,最好的方法是写一个实现了Comparator接口的类。 总的来说,Comparator接口比Comparable接口要灵活。