Java重写sort排序

  • 实现Comparable接口,重写compareTo()方法
public class Person implements Comparable<Person>{
    private Integer age;
    private String name;

    public Person(Integer age, String name) {
        this.age = age;
        this.name = name;
    }

    @Override
    public int compareTo(Person person) {
        int compareAge = age.compareTo(person.age);
        if(compareAge != 0){
            return compareAge;
        }
        return name.compareTo(person.name);
    }
}
  • 在sort方面里面重写compare方法
list.sort(new Comparator<Person>() {
           @Override
           public int compare(Person person1, Person person2) {
               int age = person1.getAge().compareTo(person2.getAge());
               if (age != 0) {
                   return age;
               }
               return person1.getName().compareTo(person2.getName());
           }
});
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,394评论 11 349
  • 抽象类 在继承的层次结构中,每个新子类都使类变得越来越明确具体。如果从一个子类追溯到父类,类就会变得更通用和抽象。...
    Steven1997阅读 1,432评论 0 5
  • 废话不多说,自己进入今天的主题 1、面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: - 抽象:...
    传奇内服号阅读 2,425评论 1 31
  • 项目中经常会遇到列表搜索查询,大部分的查询是可以通过sql语句来实现的,有些特殊的搜索排序sql则实现不了,例如中...
    信徒_allen阅读 2,620评论 0 1
  • 上次大概是加班加太累了,竟然在第一篇写札幌的文章上直接删掉写了第二篇@_@。最近连日的加班和想想就很头疼的工作量,...
    刺猬ciwei_532a阅读 381评论 0 0