Comparable接口与Comparator接口的比较————总结
之前的两篇文章主要学习了Comparable接口和Comparator接口的学习。既然已经学习完了,现在就趁热打铁,进行总结吧!
Comparable接口和Comparator接口的共同点:
1. 都是为了进行排序。(废话,当然都是进行排序了!!!嘿嘿,大家都能看出来,不过还是写下来了!)
2. 都是接口。(额。。又是废话)
除此之外,小编想不出还有什么共同点了!想到了其他的相同点可以在文章下方留言,大家一起学习!
相同点说完了,接下来就是不同点啦。
Comparable接口与Comparator接口的不同点:
1. 虽然都是为了排序,但是排序的方式不同。
Comparable接口的排序是:按字典顺序排序。
Comparator接口的排序是:coder自己设定的排序,包含字典属性排序。
这是主要的区别呀!
2. 其次实现的方法不同。(这个大家都知道的哈)
Comparable接口的方法:compareTo(Object o)
Comparator接口的方法:compare(T o1, To2)
3. 再者使用的方式不同。(小编都不好意思在编下去了......)
针对不同的对象,使用的方式也不同:
List列表:
Comparable接口:Collections.sort(List<T> list);
Comparator接口:Collections.sort(List<T> list, Comparator<? super T> c);
Array数值:
Comparable接口:Arrays.sort(List<T> list);
Comparator接口:Arrays.sort(List<T> list, Comparator<? super T> c);
4. 实现的方式不同。
Comparable接口的实现:直接用需要进行排序的类实现即可。例如:public class User implements Comparable<User>
Comparator接口的实现:需要新建一个类实现此接口。例如:public class UserComparator implements Comparator<User>
以上就是Comparable接口与Comparator接口的异同了!如有遗漏的,小伙伴们可以在下面评论哈,告诉我,你们是我的老师哈!
Comparable接口与Comparator接口的比较————总结的更多相关文章
- Java中实现对象的比较:Comparable接口和Comparator接口
在实际应用中,我们往往有需要比较两个自定义对象大小的地方.而这些自定义对象的比较,就不像简单的整型数据那么简单,它们往往包含有许多的属性,我们一般都是根据这些属性对自定义对象进行比较的.所以Java中 ...
- Java6.0中Comparable接口与Comparator接口详解
Java6.0中Comparable接口与Comparator接口详解 说到现在,读者应该对Comparable接口有了大概的了解,但是为什么又要有一个Comparator接口呢?难道Java的开发者 ...
- Java:实现对象的比较 comparable接口和comparator接口
在实际应用中,我们往往有需要比较两个自定义对象大小的地方.而这些自定义对象的比较,就不像简单的整型数据那么简单,它们往往包含有许多的属性,我们一般都是根据这些属性对自定义对象进行比较的.所以Java中 ...
- Java—集合框架 Collections.sort()、Comparable接口和Comparator接口
Collentions工具类--java.util.Collections Collentions是Java集合框架中,用来操作集合对象的工具类,也是Java集合框架的成员,与List.Map和Set ...
- 比较器:Compare接口与Comparator接口区别与理解
一.实现Compare接口与Comparator接口的类,都是为了对象实例数组排序的方便,因为可以直接调用 java.util.Arrays.sort(对象数组名称),可以自定义排序规则. 不同之处: ...
- java中Comparatable接口和Comparator接口的区别
1.不同类型的排序规则 .自然排序是什么? 自然排序是一种升序排序.对于不同的数据类型,升序规则不一样: BigDecimal BigInteger Byte Double Float Int ...
- Comparatable接口和Comparator接口的使用与区别
这篇博文可以为你解决的问题如下: 什么是自然排序 Collections.sort()与Arrays.sort()的异同点 Comparatable接口和Comparator接口各自的排序依据(理论讲 ...
- Java中的Comparable接口和Comparator接口
Comparator位于包java.util下,比较器,是在集合外部定义排序.Comparable位于包java.lang下,代表当前对象可比较的,是在集合内部实现排序. Comparable代表一个 ...
- Java之Comparable接口和Comparator接口
Comparable & Comparator 都是用来实现集合中元素的比较.排序的: Comparable 是在集合内部定义的方法实现的排序: Comparator 是在集合外部实现的排序: ...
随机推荐
- laravel框架之修改
//控制器層 public function update(request $request) { $id = $request->get('id'); $data = DB::select(& ...
- rebtree学习
http://www.cnblogs.com/skywang12345/p/3245399.html http://www.cnblogs.com/skywang12345/p/3624177.htm ...
- concat()用法
SELECT school_code,`name`,phone from student WHERE login_name REGEXP 'ning$'LIMIT 10; concat() SE ...
- SQL 基础语句整理
SQL教程 SELECT 语句 SELECT * FROM 表名称 DISTINCT 语句 SELECT DISTINCT 列名称 FROM 表名称 SELECT LastName,FirstName ...
- crm客户资源显示控制
为便于员工之间的良性竞争,避免恶意挖客户,对于不同的登录用户,在客户列表中只显示当用用户自己所拥有的客户列表. ---具体的,通过在列表显示界面的列表查询语句中增加根据用户id查询其对应的客户资源的条 ...
- EF部分字段修改 自动忽略为null字段
传入一个实体 student(){id = 1,name = "测试" age = null,sex = null} 下面 是修改的方法 public async Task Edi ...
- DigitalOcean 推荐的ubuntu16下LAMP安装过程
LAMP安装过程: How To Install Linux, Apache, MySQL, PHP (LAMP) stack on Ubuntu 16.04 (另一个参考例程:Ubuntu 16.0 ...
- 使用django+rpc进行服务内部交互
一.为什么使用rpc. 1)相比uwsgi,使用rpc的长连接可以不需要频繁创建连接,提高传输效率. 2)rpc支持同步和异步,对于不需要等待返回的消息可以不等待返回继续运行,减少客户端等待时间. 3 ...
- Linux日常之命令tee
命令tee (1)读取标准输入的数据,并将其内容输出成文件 (2)主要用于重定向到文件 常用参数 -a,将读取的内容追加到文件的后面,而不是覆盖(在默认的情况下是覆盖) 命令tee与重定向的区别 重定 ...
- 一个web应用的诞生(3)
经过上一章的内容,其实就页面层来说已结可以很轻松的实现功能了,但是很明显美观上还有很大的欠缺,现在有一些很好的前端css框架,如AmazeUI,腾讯的WeUI等等,这里推荐一个和flask集成很好的b ...