Comparable与Comparator区别

Comparable与Comparator区别

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:My Eclipse 10  ,Java

作者:陈显其

撰写时间:2019/4/15

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Java的Comparable和comparator是排序接口,一个类可以通过这两个接口中的任意一个去实现排序

实现了Comparable接口的类可以通过collections.Sort或者Arrays。Sort进行排序,排序的顺序可以通过Compare方法指定,该接口是在类的内部实现的,所以是在实现接口时就通过Compare方法指定了排序的顺序

Comparable与Comparator区别_第1张图片

 

用sort排序后迭代器遍历输出列表的数据,Comparable和comparator都可以用迭代器遍历输出

Comparable与Comparator区别_第2张图片

 

Comparator接口则是在调用sort 排序的时候实现的,排序的顺序是在sort中指定的,和Comparable不一样,Comparator是在类的外面实现的

Comparable与Comparator区别_第3张图片

 

使用Comparable接口简单,实现了用Comparable接口的类可以直接作为比较的对象,但需要修改源代码,而Comparator就不用修改源代码,直接在类的外面另外实现一个比较器,Comparator比Comparable更加的自由,更难,但可以根据需求自定义比较器

你可能感兴趣的:(Comparable与Comparator区别)