比较器Comparator 和 Comparable的简单区别
来源:互联网 发布:逻辑回归算法概念 编辑:程序博客网 时间:2024/06/15 08:41
例如现在有一个自定义的类,
如果对一个对象数组进行排序这样是没法实现的,而对基本的数据类型可以这样排序是因为其都实现了Comparable<T>接口例如
所以这里的Score对象必须先实现自己的比较器才能用上述类似的方式进行排序
2,比较
(1).Comparator 和 Comparable都是Java中的内部比较器接口,都是用来实现对一个自定义的类进行排序
(2). 不同的是实现Comparable接口是定义在类的内部,比较代码需要嵌入类的内部结构中
Comparator 实现在类的外部,单独实现第一个比较器,不需要对原来的类进行结构上的变化,属于无侵入式的。
具体到上面的例子
Comparable<T>内部侵入式实现比较器
然后在主类中直接比较 Arrays.sort(score);Comparator <T>无侵入式实现比较器,只需要单独写一个比较器实现类ScoreComparator,或者写成匿名类形式
然后在主类中带入比较器类Arrays.sort(score, new ScoreComparator());
也可以写成匿名类:
Arrays.sort(score, new Comparator<TestComparator>() {@Overridepublic int compare(TestComparator o1, TestComparator o2) { //按逆序排序if (o1.time < o2.time) return 1;else if (o1.time > o2.time)return -1;else {return 0;}}});
0 0
- 比较器Comparator 和 Comparable的简单区别
- 比较器Comparator 和 Comparable的简单区别
- 比较器comparable和comparator的区别
- Comparable和Comparator的比较
- Comparable和Comparator的比较
- 比较器Comparable和Comparator
- 比较器:Comparable和Comparator
- java 中Comparator和Comparable的区别和比较
- Comparator和Comparable的区别
- Comparable和 Comparator的区别
- Comparator和Comparable的区别
- comparable和comparator的区别
- Comparable和Comparator的区别
- Comparator 和 Comparable 的区别
- comparable和comparator的区别
- Comparable和Comparator的区别
- Comparable和Comparator的区别
- Comparable和Comparator的区别
- 去除内联元素之间的间距
- 单点登录:HTTPS相关知识
- Android 根据sql文件创建数据库并插入数据
- maven中pom文件解析
- 设计模式——工厂模式
- 比较器Comparator 和 Comparable的简单区别
- java项目怎么打成可运行的jar包
- 学习一下 冒泡排序
- LVS+Keepalived负载均衡配置部署
- 网络图片下载到本地相册
- Mac终端多窗口tmux
- QT中定义类,类中自定义的结构体,但是编译报错说这个结构体未声明
- ubuntu上用apt安装php7.1的扩展
- perl调试