第十一章《Java实战常用类》第9节:Comparable接口和Comparator接口
admin
2024-03-01 17:06:37
0

对事物进行比较往往是希望对它们进行排序,因此排序的结果是由比较的结果产生的。而对事物进行比较就需要明确比较的内容是什么。例如某学校择优录取考生,就要比较所有考生的成绩,然后排列出考分的高低,而学生入学之后可能又要根据身高来排列出座位的次序。因此对两个学生进行比较,就必须先要明确到底是比较他们的考试成绩还是比较他们的身高。如果希望对两个类型相同的对象进行比较,也需要在类当中明确定义出比较规则,否则就会因没有比较规则而无法完成比较。

Comparable接口就是用于定义比较规则的接口,一个类如果实现了Comparable接口,就必须实现接口中的compareTo()抽象方法,这个方法专门用来制定比较规则,一个类如果没有实现Comparable接口,Java语言就认为这个类没有制定明确的比较规则,它的对象不能相互比较。如何在compareTo()方法中制定比较规则呢?通常情况下,程序员都是在compareTo()方法中比较两个对象的某些属性,然后根据比较结果按要求返回相应的数值。如果a对象调用自身的compareTo()方法与b对象进行比较,那么比较的语句应该是:

a.compareTo(b);

compareTo()方法的返回值为int型,规则要求:如果经过比较认为a比b小,那么程序员就要让compareTo()方法返回一个负数,而如果a与b相等,则返回0,如果a比b大,返回正数。compareTo()方法就是通过返回值的正负属性反

相关内容

热门资讯

三部门发布通知,规范公立医疗卫... 7月14日消息,国家卫生健康委、国家中医药管理局、国家疾病预防控制局今天发布通知,要求各地进一步做好...
国内商品期货收盘,原油涨超9% 7月14日消息,国内商品期货收盘,能源化工领涨。原油涨超9%,燃料油涨超8%,LU燃油涨逾7%,丙烯...
英伟达将与三菱重工在人工智能数... 7月14日消息,据报道,英伟达将与三菱重工在人工智能数据中心技术领域展开合作,英伟达正考虑在其下一代...
2026年上半年中国外贸数据重... 7月14日消息,海关总署数据显示,上半年中国货物贸易进出口总值25.47万亿元,同比增长16.9%,...
外交部:“南海仲裁案”本质上是... 7月14日消息,外交部发言人林剑主持例行记者会。有提问:据了解,南海安全圆桌对话7月13日在香港特区...
「午盘」A股早盘冲高回落,午前... A股三大股指7月14日开盘涨跌互现。早盘两市呈现冲高回落态势,三大股市均一度跌超1%后反抽跌幅收涨。...
【午盘】A股早盘冲高回落,午前... A股三大股指7月14日开盘涨跌互现。早盘两市呈现冲高回落态势,三大股市均一度跌超1%后反抽跌幅收涨。...
科创板10家公司业绩预喜,来自... 截至7月13日,科创板共10家公司披露业绩预告,相关公司分布于半导体、生物医药、锂电、新材料等多个行...
神州高铁:公司实控人拟变更为浙... 新京报贝壳财经讯 7月13日,神州高铁发布公告称,公司控股股东国投高新与浙江交通集团全资子公司浙江省...
赛力斯:控股股东拟斥资1.5亿... 新京报贝壳财经讯 7月13日,赛力斯公告称,公司控股股东重庆小康控股有限公司(简称“小康控股”)计划...