zoukankan      html  css  js  c++  java
  • Comparable接口与Comparator接口的比较————总结

    之前的两篇文章主要学习了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接口的异同了!如有遗漏的,小伙伴们可以在下面评论哈,告诉我,你们是我的老师哈!

          

  • 相关阅读:
    剪绳子
    一步一步创建聊天程序2-利用epoll来创建简单的聊天室
    一步一步创建聊天程序1-利用进程和共享内存来创建简易聊天程序
    重写二路归并排序
    数据结构中的参见排序算法的实现,以及时间复杂度和稳定性的分析(2)
    数据结构中的参见排序算法的实现,以及时间复杂度和稳定性的分析(1)
    fork函数的一些小结
    LRU的实现(使用list)
    关于一道fork生成子进程的题目
    【转载】C++编译过程
  • 原文地址:https://www.cnblogs.com/yorickLi/p/5950566.html
Copyright © 2011-2022 走看看