99网
您的当前位置:首页java实体集合list,根据多个字段排序

java实体集合list,根据多个字段排序

来源:99网

排序:对userList进行排序,按照sort升序,再按照name倒序。
默认排序,加Comparator.reverseOrder()后翻转,即倒序。

userList.sort(Comparator.comparing(User::getSort).thenComparing(User::getName,Comparator.reverseOrder()));
@Data
@AllArgsConstructor
 public static class User{
     private Integer id;
     private String name;
     private Integer sort;
 }

 public static void main(String[] args) {
     User aaa = new User(1,"aaa",2);
     User bbb = new User(2,"bbb",1);
     User ccc = new User(3,"ccc",2);
     List<User> userList = Arrays.asList(aaa,bbb,ccc);
     System.out.println(userList);
     userList.sort(Comparator.comparing(User::getSort).thenComparing(User::getName,Comparator.reverseOrder()));
     System.out.println(userList);
 }

因篇幅问题不能全部显示,请点此查看更多更全内容