之前的两篇文章主要学习了Comparable接口和Comparator接口的学习。既然已经学习完了,现在就趁热打铁,进行总结吧!

Comparable接口和Comparator接口的共同点:

  1. 都是为了进行排序。(废话,当然都是进行排序了!!!嘿嘿,大家都能看出来,不过还是写下来了!)

  2. 都是接口。(额。。又是废话)

  除此之外,小编想不出还有什么共同点了!想到了其他的相同点可以在文章下方留言,大家一起学习!

  相同点说完了,接下来就是不同点啦。

Comparable接口与Comparator接口的不同点:

  1. 虽然都是为了排序,但是排序的方式不同。

    Comparable接口的排序是:按字典顺序排序。

    Comparator接口的排序是:coder自己设定的排序,包含字典属性排序。

    这是主要的区别呀!

  2. 其次实现的方法不同。(这个大家都知道的哈)

    Comparable接口的方法:compareTo(Object o)

    Comparator接口的方法:compare(T o1, To2)

  3. 再者使用的方式不同。(小编都不好意思在编下去了......)

    针对不同的对象,使用的方式也不同:

    List列表:

      Comparable接口:Collections.sort(List<T> list);

      Comparator接口:Collections.sort(List<T> list, Comparator<? super T> c);

    Array数值:

      Comparable接口:Arrays.sort(List<T> list);

      Comparator接口:Arrays.sort(List<T> list, Comparator<? super T> c);

  4. 实现的方式不同。

    Comparable接口的实现:直接用需要进行排序的类实现即可。例如:public class User implements Comparable<User>

    Comparator接口的实现:需要新建一个类实现此接口。例如:public class UserComparator implements Comparator<User>

  以上就是Comparable接口与Comparator接口的异同了!如有遗漏的,小伙伴们可以在下面评论哈,告诉我,你们是我的老师哈!

      

Comparable接口与Comparator接口的比较————总结的更多相关文章

  1. Java中实现对象的比较:Comparable接口和Comparator接口

    在实际应用中,我们往往有需要比较两个自定义对象大小的地方.而这些自定义对象的比较,就不像简单的整型数据那么简单,它们往往包含有许多的属性,我们一般都是根据这些属性对自定义对象进行比较的.所以Java中 ...

  2. Java6.0中Comparable接口与Comparator接口详解

    Java6.0中Comparable接口与Comparator接口详解 说到现在,读者应该对Comparable接口有了大概的了解,但是为什么又要有一个Comparator接口呢?难道Java的开发者 ...

  3. Java:实现对象的比较 comparable接口和comparator接口

    在实际应用中,我们往往有需要比较两个自定义对象大小的地方.而这些自定义对象的比较,就不像简单的整型数据那么简单,它们往往包含有许多的属性,我们一般都是根据这些属性对自定义对象进行比较的.所以Java中 ...

  4. Java—集合框架 Collections.sort()、Comparable接口和Comparator接口

    Collentions工具类--java.util.Collections Collentions是Java集合框架中,用来操作集合对象的工具类,也是Java集合框架的成员,与List.Map和Set ...

  5. 比较器:Compare接口与Comparator接口区别与理解

    一.实现Compare接口与Comparator接口的类,都是为了对象实例数组排序的方便,因为可以直接调用 java.util.Arrays.sort(对象数组名称),可以自定义排序规则. 不同之处: ...

  6. java中Comparatable接口和Comparator接口的区别

    1.不同类型的排序规则 .自然排序是什么?   自然排序是一种升序排序.对于不同的数据类型,升序规则不一样:   BigDecimal BigInteger Byte Double Float Int ...

  7. Comparatable接口和Comparator接口的使用与区别

    这篇博文可以为你解决的问题如下: 什么是自然排序 Collections.sort()与Arrays.sort()的异同点 Comparatable接口和Comparator接口各自的排序依据(理论讲 ...

  8. Java中的Comparable接口和Comparator接口

    Comparator位于包java.util下,比较器,是在集合外部定义排序.Comparable位于包java.lang下,代表当前对象可比较的,是在集合内部实现排序. Comparable代表一个 ...

  9. Java之Comparable接口和Comparator接口

    Comparable & Comparator 都是用来实现集合中元素的比较.排序的: Comparable 是在集合内部定义的方法实现的排序: Comparator 是在集合外部实现的排序: ...

随机推荐

  1. POJ 2528 ——Mayor's posters(线段树+区间操作)

    Time limit 1000 ms Memory limit 65536 kB Description The citizens of Bytetown, AB, could not stand t ...

  2. hadoop-mapreduce 详解

    mapreduce 完整流程解析 1. 在客户端启动一个 job: hadoop jar share/hadoop/tools/lib/hadoop-streaming-2.6.5.jar -file ...

  3. 15. AutoMapper 之映射继承(Mapping Inheritance)

    https://www.jianshu.com/p/e4f05403bd13 映射继承(Mapping Inheritance) 映射继承有两个功能: 从基类或接口配置继承映射配置 运行时多态映射 继 ...

  4. spring-cloud学习BUG

    1.com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: c ...

  5. ——HTTP状态码

    200 请求成功,请求所希望的响应头或数据体将随此返回 302 请求的资源现在临时从不同的URI响应请求,由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求. 304 如果客户端发送了一 ...

  6. java 约瑟夫问题

    题目: 给定一个数组及数组的长度,另外给定一个数m,从数组的第一个元素出发,数到第m个元素出列(如果到最后则回到第一个元素).出列元素的值作为m的新值,从出列元素的下一元素继续开始数下去,直到所有元素 ...

  7. 【TensorFlow探索之一】MNIST的初步尝试

    最近在学习TensorFlow,尝试的第一个项目是MNIST.首先给出源码地址. 1 数据集的获取 我们可以直接运行下面的代码,来获取到MNIST的数据集. from tensorflow.examp ...

  8. excle 文件的导入和导出

    //excle 文件导出 public function excel(){ try{ include(BASE_PATH."Excel/PHPExcel.php"); // ech ...

  9. Codeforces 985 最短水桶分配 沙堆构造 贪心单调对列

    A B /* Huyyt */ #include <bits/stdc++.h> #define mem(a,b) memset(a,b,sizeof(a)) #define mkp(a, ...

  10. init.uniform / unit.normal

    均匀分布nn.init.uniform(tensor,a=0,b=1)tensor -n维的torch.Tensora 均匀分布的下界,默认值为0b 均匀分布的上界,默认值为1 正态分布torcn.n ...