500多家长期合作企业1000多家企业人才定制培 养基地,定期双选会。
免费试听价值1980元课程,满意再报名。
“理论培训+真实项目实训”养成实战高手
企业定制化培养,学员至少3个真实项目实战,毕业1月就业率达99.2%,远超同行。
怎么学好 | 学什么好 | 咋学快速 |
---|
网络营销 | 以在线咨询为准 | 热招 |
HTML5定制班![]() |
以在线咨询为准 | 热招 |
Python定制班![]() |
以在线咨询为准 | 热招 |
软件测试就业班![]() |
以在线咨询为准 | 热招 |
JAVA就业班![]() |
以在线咨询为准 | 热招 |
UI设计定制班 | 以在线咨询为准 | 热招 |
全移动智能化教学设施
定义"高大上"
让你学习高薪技术专业轻松无忧快乐
如何使用Java Core提供的两个“比较” API?
Comparable和Comparator是JavaCoreAPI提供的两个接口。从它们的名字,我们可以告诉他们可能用于以某种方式比较东西。但究竟是什么,它们之间有什么区别?以下是回答此问题的两个示例。这些简单的例子比较了两个HDTV的尺寸。阅读代码后,如何使用ComparablevsComparator是显而易见的。
1.Comparable
Comparable由类实现,以便能够将自身的对象与其他一些对象进行比较。类本身必须实现接口才能比较其实例。实现所需的方法是compareTo。这是一个例子:
输出:索尼更好。
2.Comparator
在某些情况下,你可能不希望更改类并使其具有可比性。在这种情况下,Comparator如果要基于某些属性/字段比较对象,则可以使用。例如,可以根据“高度”或“年龄”等对2个人进行比较(使用可比较的方法无法做到这一点。)
实现所需的方法是compare。现在让我们用另一种方法来比较这些电视的大小。一种常见的用途Comparator是分类。bothCollections和Arraysclasses都提供了一个使用a的排序方法Comparator。
输出:
松下三星索尼
通常我们可以使用Collections.reverseOrder方法来获得降序比较。如下:
输出:
[3,1,2][1,2,3][3,2,1]
3.何时使用哪个接口?
简而言之,实现Comparable的类将具有可比性,这意味着它可以相互比较实例。
实现Comparator的类将主要用于两种情况:1)它可以传递给排序方法,例如Collections.sort或Arrays.sort,以允许精确控制排序顺序和2)它还可以用于控制某些数据的顺序结构,例如有序集(例如TreeSet)或有序映射(例如TreeMap)。
例如,创建一个TreeSet。我们可以将构造函数传递给比较器,也可以使对象类具有可比性。
方法1-TreeSet
方法2-Comparable
这篇文章到这里就结束了,大家对本次知识点是否理解了呢?如果有疑问可以登录“IT培训网官网”咨询在线客服老师哦。
全国1000多家名企招聘
近500家企业人才定制培养需求
想不就业,太难!
课程免费咨询热线:13783581536