compareTo

  • compareTo(Object o)方法是java.lang.Comparable接口中的方法,当需要对某个类的对象进行排序时,该类需要实现Comparable接口的,必须重写public int compareTo(T o)方法。
  • 它强行将实现它的每一个类的对象进行整体排序-----称为该类的自然排序,实现此接口的对象列表和数组可以用Collections.sort(),和Arrays.sort()进行自动排序;
  • 也就是说,只要实现了这个接口的对象(数组)就相当于有了排序的能力,所以叫做comparable—可排序的,所以可以说这是一种内部排序的方式,通过实现它唯一的方法compareTo()。
  • 比如Hadoop中的MapReduce,Map函数和Reduce函数处理的 <key,value>,其中需要根据key对键值对进行排序,所以,key实现了WritableComparable接口,实现这个接口可同时用于序列化和反序列化。WritableComparable接口(用于序列化和反序列化)是Writable接口和Comparable接口的组合;

compare

  • compare(Object o1,Object o2)方法是java.util.Comparator接口的方法,它实际上用的是待比较对象的compareTo(Object o)方法。
  • 对于它,则是针对一些本身没有比较能力的对象(数组)为它们实现比较的功能,所以它叫做比较器,是一个外部的东西,通过它定义比较的方式,再传到Collection.sort()和Arrays.sort()中对目标排序,而且通过自身的方法compare()定义比较的内容和结果的升降序;

CompareTo()和Compare()的用法相关推荐

  1. java中compare语句的用法,compare的用法_java中 compareTo()的程序代码及用法

    compare的用法与区别? 一.用法 v. (动词) 1.compare的基本意思是"比较,对照",主要用于比较事物的典型特征及其价值,而不在于比较相同与不同. 2.compar ...

  2. java compare equla_Java中的equals,==,compareTo和compare的比较

    Java中的equals(),==,compareTo()和compare() 首先只有==可以用作两个基本类型数据之间的比较,当然是值比较.当用作两个对象比较时,比较的是对象引用,而不是值比较. 其 ...

  3. Java中的equals(),==,compareTo()和compare()

    Java中的equals(),==,compareTo()和compare() 首先只有==可以用作两个基本类型数据之间的比较,当然是值比较.当用作两个对象比较时,比较的是对象引用,而不是值比较. 其 ...

  4. java to对象_java中同类对象之间的compareTo()和compare()方法对比分析

    首先我们都知道java中的比较都是同一类对象与对象之间的比较,就好像现实生活中比较人和人的年龄一样,你不会去把人的年龄和人的身高来比较,这显然是没有意义的. java中同类对象之间的比较又分为两种,基 ...

  5. CompareTo和compare的区别

    compareTo和compare的区别 compareTo是comparable(可比较的)接口的方法. 当需要对一个对象或一个数组进行排序时,必须实现comparable接口,重写compareT ...

  6. java中compare语句的用法,java.(compareTo的用法),关于Compare的用法

    1.vt. 比较:对照.如: Compare your answers with those at the back of the book to see if they are right. 把你的 ...

  7. compareTo()和compare()的详解和区别

    背景: Java的Comparator和Comparable当需要排序的集合或数组不是单纯的数字型时,通常可以使用Comparator或Comparable,以简单的方式实现对象排序或自定义排序. 一 ...

  8. java:compareTo和compare方法之比较

    compareTo compareTo(Object o)方法是java.lang.Comparable<T>接口中的方法,当需要对某个类的对象进行排序时,该类需要实现Comparable ...

  9. c语言中compar的用法,compare的用法

    compare com.pare [kəm`pZr; kəmˋpZə] <源自拉丁文"使对等"的意思> 及物动词 1 a.(为彰显类吃B相异之处,并了解其相对价值而) ...

最新文章

  1. Fedora 19配置KVM虚拟机的桥接网络
  2. C# MySQL数据库的备份 还原 初始化
  3. mysql防止误删除的方法
  4. C++基类和派生类的析构函数
  5. 【机器学习基础】一文搞懂机器学习里的L1与L2正则化
  6. html转义成velocity,改造Velocity模板引擎让$[!]{}输出默认进行html转义,并增加$#{}语法支持不转义输出...
  7. mysql 程序崩溃无法启动_mysql数据库崩溃,无法启动
  8. 生成器和迭代器,列表推导式
  9. IBM核心软件如何应对“互联网+”的技术挑战
  10. python批量图片自动编码
  11. 计算机如何分割硬盘,电脑硬盘怎么分区 电脑硬盘分区方法大全
  12. FineReport中cjk编码转换
  13. logback配置信息详解
  14. 怎么使用Navicat连接数据库?
  15. 民企员工股权激励的前提条件
  16. ​透过享云链白皮书 看到开启云计算更大一扇门
  17. TCP的三次握手与四次挥手基本理解
  18. php短信炸弹,php发送短信炸弹 - rookier的个人页面 - OSCHINA - 中文开源技术交流社区...
  19. Fedora 阿里云源
  20. 服务器上文件不能编辑器,UEditor 编辑器常见问题解决

热门文章

  1. 问卷星复制内容方法(利用官方功能导出为word格式)
  2. 叠加阶梯图和线图及合并线图和针状图
  3. 音标课件软件测试,宝宝益智英语字母音标(测试版)
  4. 扩大eclipse的运行内存
  5. VC6/VS6定制应用程序按键与贴图错位问题的排查及解决
  6. 高质量的文本链接一样可以提高网站排名
  7. Power BI中的填充功能
  8. Samba服务器的配置和使用
  9. 四旋翼飞行器轨迹跟踪仿真MATLAB simulink/simscape
  10. Nexus Windows中搭建Nexus仓库