// 创建集合
List<User> userList = new ArrayList<>;
//省略集合赋值过程
.......
//排序:根据项目类型升序
Comparator<User> userTypeOrder = Comparator.comparing(User::getUserType);
//排序:根据项目类型降序
//Comparator<User> userTypeOrder =
//Comparator.comparing(User::getUserType).reversed();
// 项目目标为【其他】时排最后
Comparator<User> userNameOrder= new Comparator<User>() {
@Override
public int compare(User o1, User o2) {
if(!"其他".equals(o1.getUserName())){
return -1;
}
if("其他".equals(o1.getUserName())){
return 1;
}
return 0;
}
};
// 多个字段联合排序:项目类型升序,项目目标为【其他】时排最后
userList .sort(userTypeOrder.thenComparing(userNameOrder));
List 根据多个属性进行排序
于 2021-10-19 12:16:59 首次发布