java接口comparable和comparator比较器

接口比较器的两种(哈哈哈,不知道是不是就这两个常用,还是我就学了这两种,但是知道这两种就可以解决大部分的任务)
1.Comparable
2.Comparator

1.Comparable的实现类

	int compareTo(Object o)

2.Comparator的实现类

	int compare(Object o1, Object o2) 

首先我们首先要明白的是,这两种比较器的用武之地。
Comparable用在类里面,高耦合
简而言之,它是在对象类里进行的实现之后集合再进行调用。
在这里插入图片描述
2.Comparetor比较器耦合度低,可以独立的在其他类中,更加符合编程的思想
①普通类继承实现
在这里插入图片描述
在这里插入图片描述②内部类实现

在这里插入图片描述
二丶比较器到底是怎么进行比较大小的呢?
这个问题是我也是大家之后最挠头的问题,如果你们老师教过或者网上的一部分直接告诉我们用固定的套路,记住就行,也是可以的,但是像我这样的初生牛犊不怕虎,就想搞懂
就查了资料发现大家都要不是太简单要不是就是搞的听不懂。
1.Comparable
内部实现compareTo(Object o)
比较的是一个二叉树,用当前的对象去和插入的数据进行对比,如果结果返回的是负数就说明数据
放在左边,如果结果返回的是大于0的数就放在右边。
2.Comparator
内部实现Compare(Object o1,Object o2)
是将第一个对象和第二个对象进行对比,原理和上面的一样。

(实际操作呢,如果不懂还是试试最好使。其实哥们也没懂具体怎么比较排序的,数据结构大学应该在睡觉,写下这个博客的一是提醒自己这个还不懂,二是看这份博客的朋友懂的给个解释,谢谢啦。如果我在下面的学习过程中解决了我就会补全。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值