深度解析Java中的Comparable接口和Comparator接口
大家好,我是小鱼儿
新的一天,大家一起加油!
目录
引子
Comparable接口
Comparator接口
引子
我们之前的文章的文章提到了Arrays是一个数组工具类,用Arrays.sort能够对各种类型的数组进行排序,那下面的数组能不能用Arrays.sort排序呢?
class Student { // 自定义的学生类String name;int age;public Student(String name, int age) {this.name = name;this.age = age;}@Override // 对父类Object的父类方法进行重写,以便直接打印出当前对象的值public String toString() { // 这是IDEA的自动生成的toString重写,你也可以按照自己的喜好自由的选择打印的形式return "Student{" +"name='" + name + '\'' +", age=" + age +'}';}
}
public class test4 {public static void main(String[] args) {Student[] students = new Student[] { // 我们定义了一个数组,数组中每个元素都是一个学生对象new Student("zhangsan", 13),new Student("lisi", 23),new Student("able", 17),};Arrays.sort(students); // 用类Arrays.sort对students数组进行排序System.out.println(Arrays.toString(students));// 注意这里的toString是Arrays自己的toString方法,和Object类中的toString方法不是同一个方法,// 只是碰巧同名,参数都不一样,Arrays的有参数,Object没参数// 我们前几篇文章专门对Arrays以及toString方法的重写做了说明,这里不再赘述}
}
但你运行的时候,你会发现程序报错了
现在的编程语言越来越复杂,尽管有大量的文档和书籍,这些学习资料仍然只能描述编程语言的冰山一角.而这些编程语言中的很多功能,可能被永远隐藏在黑暗角落.本文将为你解释其中5个Java中隐藏的秘密,可以称其 ... 前言 就是普普通通的写这么一篇文章,java集合类估计java程序猿都知道,那就写一点小众的. 在实际应用中,我们往往有需要比较两个自定义对象大小的地方.而这些自定义对象的比较,就不像简单的整型数据那 ... Java6.0中Comparable接口与Comparator接口详解 说到现在,读者应该对Comparable接口有了大概的了解,但是为什么又要有一个Comparator接口呢?难道Java的开发者 ... 解析Java中如何获取Spring中配置的bean Java中如何获取Spring中配置的bean?下面是由百分网小编为大家整理的解析Java中如何获取Spring中配置的bean,喜欢的可以收藏一下 ... 解析Java中的String对象的数据类型 2007-06-06 eNet&Ciweek 1. 首先String不属于8种基本数据类型,String是一个对象. 因为对象的默认值是null,所 ... 解析Java中的Field类和Method类 Field类Field类中定义了一些方法,可以用来查询字段的类型以及设置或读取字段的值.将这些方法与继承而来的member方法结合在一起.就可以使我们能够 ... 大家好,我是沉默王二,周末在逛 programcreek 的时候,我发现了一些专注细节但价值连城的主题.比如说:Java 的 Comparable 和 Comparator 是兄弟俩吗?像这类灵魂拷问 ... 不知什么原因,出售的<深度解析Java游戏服务器开发>一书中,没有给出源码,这里补上,源码已经上传至github: https://github.com/hjcenry/JavaServe ... 深度解析C++中的POD类型:从理论基础到项目实践 1. C++中的POD类型(Plain Old Data) 1.1 POD类型的定义和特性 Trivial类型 Standard layout类型 ...深度解析Java中的Comparable接口和Comparator接口相关推荐
最新文章
热门文章