九、 使用Collections的sort方法实现自定义排序

Java使用Collectoins的sort方法实现自定义排序

前述如下:

  • Student类有年龄和姓名
  • 让Student按照年龄排序

代码如下:

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class Test {

    public static void main(String[] args) {

        List<Student> list = new ArrayList<Student>();
        list.add(new Student("xxx", 23));
        list.add(new Student("ccc", 21));
        list.add(new Student("vvv", 22));
        Collections.sort(list, new Comparator<Student>() {
            public int compare(Student o1, Student o2) {
                if (o1.age > o2.age) {
                    return 1;
                } else if (o1.age == o2.age) {
                    return 0;
                } else {
                    return -1;
                }
            }
        });

        for (Student student : list) {
            System.out.println(student.name);
        }

    }
}

class Student {
    String name;
    int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一. Java基础部分.................................................
    wy_sure阅读 3,832评论 0 11
  • 在日常开发中,很多时候都需要对一些数据进行排序的操作。然而那些数据一般都是放在一个集合中如:Map,Set ,Li...
    杰子他爸阅读 1,239评论 0 1
  • 1.import static是Java 5增加的功能,就是将Import类中的静态方法,可以作为本类的静态方法来...
    XLsn0w阅读 1,261评论 0 2
  • 面向对象主要针对面向过程。 面向过程的基本单元是函数。 什么是对象:EVERYTHING IS OBJECT(万物...
    sinpi阅读 1,082评论 0 4
  • 2014年的苹果全球开发者大会(WWDC),当Craig Federighi向全世界宣布“We have new ...
    yeshenlong520阅读 2,311评论 0 9