关于Comparable接口的使用
2015-10-19 19:42
246 查看
一、使用Comparable接口进行排序:如何要都某种数据类型或者是自定义的类进行排序必须要实现Comparable
jdk定义的基本数据类型和String类型的数据都实现了Comparable。下面以实例来展现Comparable的具体实现
1、Comparable接口的定义:
Comparable接口只定义了一个方法compareTo(T o);返回int类型的数据。
该该方法返回3个范围的数据:>0;=0;<0;
下面是一个实例
对于字符串进行排序
jdk定义的基本数据类型和String类型的数据都实现了Comparable。下面以实例来展现Comparable的具体实现
1、Comparable接口的定义:
public interface Comparable<T> { public int compareTo(T o); }
Comparable接口只定义了一个方法compareTo(T o);返回int类型的数据。
该该方法返回3个范围的数据:>0;=0;<0;
下面是一个实例
public class Grade implements Comparable<Grade> { private int grade; public Grade(int grade) { super(); this.grade = grade; } public int getGrade() { return grade; } public void setGrade(int grade) { this.grade = grade; } @Override public int compareTo(Grade grade) { return this.grade - grade.getGrade(); } @Override public String toString() { return "Grade [grade=" + grade + "]"; } }
对于字符串进行排序
public int compareTo(String anotherString) { int len1 = value.length; int len2 = anotherString.value.length; int lim = Math.min(len1, len2); char v1[] = value; char v2[] = anotherString.value; int k = 0; while (k < lim) { char c1 = v1[k]; char c2 = v2[k]; if (c1 != c2) { return c1 - c2; } k++; } return len1 - len2; }
相关文章推荐
- add,iterator,toString三个方法实现
- mysql 视图
- 一些程序OEP入口特征
- android中操纵sqlite数据库
- BZOJ2705: [SDOI2012]Longge的问题
- java基础学习笔记——集合框架
- sort函数的cmp函数怎么写?
- C语言中的break、continue和goto三者的区别与用法
- HDU 2577 DP
- C-基本语法与运算
- spring-session实例
- 从软件工程视角,回顾分析本科毕业设计软件中存在的不足问题
- Linux下抓包工具tcpdump以及分析包的工具wireshark
- 3盏灯和3个开关的对应关系
- Facebook人工智能实验室的前世今生
- tiled map中折线的提取
- Gallery 和probe数据集
- Python中assert的用法
- 【颗粒归仓,自考总结】——数据库系统原理总结
- 归档备忘!