1、升序排序
list = list.stream().sorted(Comparator.comparing(T::get排序字段)).collect(Collectors.toList());
2、降序排序
// reversed表示降序,不加默认升序
list = list.stream().sorted(Comparator.comparing(T::get排序字段)).reversed().collect(Collectors.toList());
3、现根据a排序,然后根据b排序
list = list.stream().sorted(Comparator.comparing(T::get排序字段a).reversed().thenComparing(T::get排序字段b))
.collect(Collectors.toList());
4、先根据a字段升序,再根据b字段降序;e1,e2中是e1-e2为升序;e3,e4中e4-e3为升序
//现根据a字段升序,再根据b字段降序;e1,e2中是e1-e2为升序;e3,e4中e4-e3为升序
list = list.stream()
.sorted((e3 , e4) ->
Integer.parseInt(e4.get排序字段b())
- Integer.parseInt(e3.get排序字段b())).
sorted(
(e1 , e2) ->
e1.get排序字段a() - e2.get排序字段a()).
collect(Collectors.toList());