博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Comparable and Comparator
阅读量:6720 次
发布时间:2019-06-25

本文共 1051 字,大约阅读时间需要 3 分钟。

Comparable

Comparable 是排序接口。 Collection.sort() 和Arrays.sort()都支持可以排序'实现Comparable接口的类的对象的List列表(或数组)' 换而言之, 如果数组或列表想支持sort方法排序, 他里面的object必须要实现Comparable接口.

Comparable 定义

Comparable 接口仅仅只包括一个函数,它的定义如下:

package java.lang;import java.util.*;public interface Comparable
{ public int compareTo(T o);}

说明:

假设我们通过 x.compareTo(y) 来“比较x和y的大小”。若返回“负数”,意味着“x比y小”;返回“零”,意味着“x等于y”;返回“正数”,意味着“x大于y”。

Comparator

Comparator 是比较器接口。

我们若需要控制某个类的次序,而该类本身不支持排序(即没有实现Comparable接口);那么,我们可以建立一个“该类的比较器”来进行排序。这个“比较器”只需要实现Comparator接口即可。

Sort就又Sort(list, comparator)的功能.

Comparator 定义

Comparator 接口仅仅只包括两个个函数,它的定义如下:

package java.util;public interface Comparator
{ int compare(T o1, T o2); boolean equals(Object obj);}

说明:

(01) 若一个类要实现Comparator接口:它一定要实现compareTo(T o1, T o2) 函数,但可以不实现 equals(Object obj) 函数。类默认都是已经实现了equals(Object obj)的。 Java中的一切类都是继承于java.lang.Object,在Object.java中实现了equals(Object obj)函数;所以,其它所有的类也相当于都实现了该函数。

(02) int compare(T o1, T o2) 是“比较o1和o2的大小”。返回“负数”,意味着“o1比o2小”;返回“零”,意味着“o1等于o2”;返回“正数”,意味着“o1大于o2”。

文章节选自 有修改

转载地址:http://xijmo.baihongyu.com/

你可能感兴趣的文章
[20160919]Result cache问题.txt
查看>>
Linux系统硬盘读写测试
查看>>
移动端点击300ms延迟
查看>>
外网用户远程控制内部网络设备
查看>>
Num40 ssh项目--orm案例小小知识点
查看>>
嵌入式系统一些硬件概念
查看>>
neo4j配置文件注意项
查看>>
git 使用精华(1)
查看>>
游戏开发的成功秘诀
查看>>
网络 使用select编写服务器
查看>>
Timeout error occurred trying to start MySQL Daemon 解决办法:
查看>>
不会沟通,金子也未必会发光
查看>>
MongoDB整合Spring
查看>>
WebServices
查看>>
svn代码版本管理
查看>>
Java在mysql中存储emoji表情
查看>>
27、sudo学习笔记
查看>>
22、iptables学习笔记
查看>>
CoreAnimation
查看>>
NTP和DHCP服务器搭建
查看>>