第十一章《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()方法就是通过返回值的正负属性反

相关内容

热门资讯

北方华创,巨额商誉压力突然高悬... 文丨詹詹编辑丨百进来源丨新商悟(本文约为 1300字)当国内半导体设备龙头北方华创交出一份“营收创历...
长城华西银行原女掌门已回老东家... 湘财Plus注意到,四川银行入主长城华西银行后,该行核心管理人员调整基本落定,法定代表人已正式变更为...
立案,跌停!这家“童年记忆”,... 沉浮多年,方向何在?最近被立案的上市公司,着实有些多,就在上周末,又有一家上市公司及原董事长被立案调...
加码生态环境监测!生态环境部:... 本文来源:时代周报 作者:李杭4月27日,生态环境部举行4月例行新闻发布会。 生态环境部4月例行新...
东方甄选主播“离职潮”持续发酵... 红星资本局4月27日消息,东方甄选(01797.HK)主播“离职潮”事件仍在发酵。在社交平台上,有部...
SpaceX万亿IPO前夜:马... 从20亿美元收购,到万亿IPO前的最后叙事。2026年4月23日深夜,特斯拉向SEC提交了一份季报文...
前董事长陆宏达“闪电辞职”牵扯... 紧急澄清前董事长性侵指控后,智度股份仍难挡股价大跌。4月27日,智度股份早盘一度重挫逾9%,逼近6....
高盛:一场全球性化工危机正在爆... 霍尔木兹海峡通行受阻,正在引发一场史无前例的全球化工供应冲击。高盛最新报告表示,基础化工品价格近几周...
这笔400亿,谷歌买的不是友谊... 4月25日,Anthropic宣布谷歌将向其投资最高400亿美元——先期注入100亿美元现金,估值3...
粪坑,爬出来了 粪坑,爬出来了... 图:Simon Bailly 读者说:“有人发现吗?2019年蚂蚁的大热基金鹏华快回本了,当年最高回...