Stream排序和取最大值和最小值
List<People> peopleList = new ArrayList<>();
People lihua1 = People.builder().id(1).name("lihua1").build();
People lihua2 = People.builder().id(2).name("lihua2").build();
People lihua3 = People.builder().id(3).name("lihua3").build();
People lihua4 = People.builder().id(4).name("lihua4").build();
Collections.addAll(peopleList, lihua1, lihua2, lihua3, lihua4);
System.out.println("--------------------顺序输出-------------------");
peopleList.stream().sorted(Comparator.comparing(People::getId))
.forEach(System.out::println);
System.out.println("--------------------逆序输出-------------------");
peopleList.stream().sorted(Comparator.comparing(People::getId).reversed())
.forEach(System.out::println);
System.out.println("--------------------求最小值-------------------");
People peopleMin = peopleLst.stream().min(Comparator.comparing(People::getId))
.orElse(null);
System.out.println(peopleMin);
System.out.println("--------------------求最大值--------------------");
People peopleMax = peopleList.stream().max(Comparator.comparing(People::getId))
.orElse(null);
System.out.println(peopleMax);