模型类 People(也就是待排序集合中的对象,没有@Data这个注解的需要自己写set get方法)
@Data
public class People {
/*
*id
* */
private Long id;
/*
*姓名
* */
private String name;
/*
*年龄
* */
private int age;
/*
*现有资产
* */
private double money;
}
测试类 Test
对年龄进行由小到大排序,使用util包里的Comparator来创建一个匿名内部类,并重写compare方法。
import java.util.*;
public class Test {
public static void main(String[] args) {
List<People> peopleList = new ArrayList<>(); // 待排序的集合
Comparator<People> comparator = new Comparator<People>(){
@Override
public int compare(People o1, People o2) {
if(o1.getAge() > o2.getAge()){
return 1;
}else if(o1.getAge() < o2.getAge()){
return -1;
}else {
return 0;
}
}
};
Collections.sort(peopleList,comparator);
}
}
这样就对包含对象的集合peopleList完成排序了,如果想要改为由大到小排序,只需把 if 中的 “>”,“<”调换一下位置就可以了。