1.stream sorted:
常规list:
list.stream().sorted()
list.stream().sorted(Comparator.reverseOrder())
实体集list排序
list.stream().sorted(Comparator.comparing(Student::getAge))
list.stream().sorted(Comparator.comparing(Student::getAge).reversed())
记得最后加上collect(Collectors.toList()) 返回新的list
实体类 implements Comparable<T>
详情:https://www.concretepage.com/java/jdk-8/java-8-stream-sorted-example
两个对象比较:
List result = list.stream().sorted((o1, o2)->o1.getItem().getValue(). compareTo(o2.getItem().getValue())). collect(Collectors.toList());
同样适用于List中的元素是map的形式哦,只要最终取到值做比较即可,此为升序。
2.map and flatMap
https://www.baeldung.com/java-difference-map-and-flatmap
总体来说就是flatMap得出的结果相较于Map的少了一层封装,其他的功能和map差不多
网友评论