Java中comparator,java中comparable是什么意思
确定两个对象之间的大小关系和排列顺序称为比较,能够实现这种比较功能的类或方法称为比较器。java中有两种比较器。
内部比较器(Comparable接口)和外部比较器(Comparator接口)
一、使用比较器排序比较器3354可以看作是一个类(对象)外部比较器(实现比较器接口)。
简单来说就是在类外写比较器,没错!外面定义了一个新的比较器类!
用任何名字定义一个新类,但是这个类必须实现比较器接口并重写比较方法。我们称之为外部比较器。
案例:存储学生对象并遍历它们,使用带参数的构造方法创建一个TreeSet集合。
要求:按年龄从小到大排序,年龄相同时,按姓名字母顺序排序。
免费视频教程推荐:java教学视频
实现步骤:TreeSet集合用于存储用户自定义对象,带参数的构造方法使用comparator排序对元素进行排序,即集合构造方法接收Comparator的实现类对象。重写compare(Student s1,Student s2)方法时,一定要注意排序规则一定要按照要求的主次条件来写。
1.学生
如何解决写爬虫IP受阻的问题?立即使用。
2.测试类
二、自然排序的使用Comparable ——类(对象)内部比较器(实现Comparable接口):
简单来说,比较器写在类内部。
一个类(对象)实现了Comparable接口,然后覆盖了compareTo方法(这个方法可以看作是比较器),这个类有一个内部比较器。注意,一旦实现了比较器,这个类就支持排序。
实施步骤:
使用TreeSet集合存储自定义对象,无参数构造方法,使用自然排序对元素进行排序。
自然排序意味着元素所属的类实现Comparable接口并覆盖compareTo(Student s)方法。
当重写方法时,一定要注意必须根据所需的主要和次要条件编写排序规则。
1.学生
2.测试类
测试结果:
相关文章教程推荐:java零基础入门以上是java中Compare和comparator区别的详细内容。请多关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。