import java.util.Comparator;import java.util.TreeSet;public class StudentTreeSet { public static void main(String[] args) { // TODO Auto-generated method stub TreeSet students = new TreeSet(new AgeAscComparator()); students.add(new Student("张三", 3,59)); //实参分别是name,age,score; students.add(new Student("李四", 1,60)); students.add(new Student("王五", 2,88)); students.add(new Student("陈六", 5,46)); students.add(new Student("田七", 4,55)); System.out.println(students); } }class AgeAscComparator implements Comparator{ @Override public int compare(Student o1, Student o2) { return o1.getAge()-o2.getAge(); } }
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
java中的这个comparator怎么个排序法
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
threenewbee 2016-08-06 08:50关注return o1.getAge()-o2.getAge();
按照对象的age,从小到大排序(如果要从大到小,就是o2-o1)本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2020-04-05 11:05回答 1 已采纳 只能指定一个比较规则吧,你这个要求貌似无法满足,可以查看源码,实际上是按数组的形式进行排序的。
- 2022-09-14 16:15回答 3 已采纳 public static void main(String[] args) { List<Long> list = new ArrayList<>(); li
- 2022-07-27 16:05回答 1 已采纳 要不你改成这样试试return Integer.compare((int)field1.get(obj2),(int)field1.get(obj1));
- 2024-09-12 16:09南 极的博客 探究 Java 中 Comparable 与 Comparator 接口:掌握优雅排序的艺术
- 2019-11-15 18:58回答 3 已采纳 Comparator 是一个**比较器**接口,Arrays.sort() 是排序函数,默认是升序排序,有时候需要降序排序,就需要传递一个Comparator,并重写其compare( ) 方法;
- 2022-02-14 18:21回答 3 已采纳 兄弟,我在你上一个问题给你回复了 package org.jshand.itextpdf; import java.util.Comparator; import java.util.HashMap
- 2019-10-12 10:37回答 3 已采纳 ``` Arrays.sort(data,new Comparator(){ @Override public int compare(int[] o1,int[] o2){ for(in
- 2022-07-27 22:00Encarta1993的博客 排序在业务逻辑中是非常重要的功能,下面是一个基于Java的自定义排序实践。以上是自定义排序的一种简单实践,具体还需根据实践进行更复杂的排序。
- 2021-08-07 17:25回答 2 已采纳 上面那两个其实都可以实现年龄倒序,thenComparing在你的程序里代表,如果年龄相同就比较xx,进行升序排序但是你的第二个是不是有问题啊,少写了一个),程序应该有报错吧?
- 2022-11-26 23:17回答 2 已采纳 二分查找 binarySearch 里的逻辑可以看下,查找的对象需要 实现Comparable 接口,并重写 compareTo 方法 可以参考 String 类 public class F
- 2022-07-08 15:47回答 1 已采纳 这里的泛型 U extends Comparable<? super U> 表示 U实现了Comparable接口。这里的Function是一个函数式接口,原型是Function<T
- 2021-12-20 23:07Moshow郑锴的博客 2.使用`Comparator.comparing`进行排序,`reversed()`进行`倒序`排列,`thenComparing`进行下一个排序。 3.`Comparator.comparing()`里面的内容,也是就是`Object::getter` 4.最后格式化为需要的格式.collect...
- 2022-08-07 11:47向上的狼的博客 Java中的排序接口Comparable和比较器Comparator详解
- 2022-12-08 16:54猴子学编程的博客 在使用sort方法时,该方法的第二个参数为Comparator接口类型,Comparator接口是比较器接口,实现该接口中的compare方法,给出对象的比较逻辑。使用Collections类提供的sort方法,按照Cell对象的col值的大小升序排列...
- 2020-09-04 19:20此外,对于大型数据集,考虑使用`List`而非数组,并使用`Collections.sort()`方法,因为`Collections`提供了更高效的排序算法。同时,如果你的数据存储在数据库中,还可以利用数据库提供的排序功能,比如SQL的`ORDER...
- 2021-03-06 13:27编程小族管的博客 最近正好用到Comparator,发现能对不同类型的对象进行排序(当然排序依据还是基本类型),也不用自己实现排序算法,用起来很方便,所以简单记录一下。Interface Comparator对任意类型集合对象进行整体排序,排序时将此...
- 2023-05-15 11:05小小大侠客的博客 Java之Comparator排序问题
- 2024-09-05 22:19码仔~的博客 在Java中,当一个对象实现了 `Comparable` 接口,这意味着该对象的类定义了一个自然的排序标准。`Comparable` 接口要求实现它的类必须实现 `compareTo` 方法,这个方法定义了对象之间的比较规则。
- 2020-09-01 14:35在Java编程中,排序是我们经常遇到的任务,而自然排序和比较器排序是两种重要的对象排序方式。本文将深入讲解这两种排序方法,并通过实例代码进行演示。 首先,自然排序是指实现了`java.lang.Comparable`接口的类...
- 2020-12-22 11:46在Java编程语言中,特别是在算法竞赛的环境下,经常会遇到需要对数据进行自定义排序的情况。以下将详细讲解三种常见的自定义排序方式: 1. **对象数组排序**: Java不支持像C++那样的结构体,因此当需要处理具有多...
- 没有解决我的问题, 去提问