- 其实都差不多。
- 基本类型大多都实现了Comparable接口,比较方式compareTo(T t)已经固定下来了。如果我们对原来的比较方式不满意的话,可以另外实现Comparator接口重写compare(T t1,T t2)。
- 其他类如果要实现自己的比较方式的话,推荐实现Comparable接口,不过由于泛型已经限定下来了,要比较也只能比较两个相同类的对象。比如说比较一下谁的年龄比较大之类的。
- Comparator还可以作为一个外比较器,即不需在定义类的时候就实现它并重写compare(),这个比较器不依附于要比较的对象,它可以单独写单独用。详见:Java8已定义的函数式接口
Comparable和Comparator的区别
最后更新时间:
这里可以写作者留言,标签和 hexo 中所有变量及辅助函数等均可调用,示例:http://47.107.237.149/2019/04/30/Comparable和Comparator的区别/