java编程积累

java采坑之路-lamda排序

2020-06-14  本文已影响0人  风一样的存在

对于普通的字符串和整型排序还好,但是遇到对象集合或数组排序就要实现compare接口或者自定义比较器。lamda表达式提供了更简洁的代码风格。

students.stream().sorted(Comparator.comparing(Student::getName).reversed()
.thenComparing(Student::getAge).reversed())
.collect(Collectors.toList()));

但是集合中出线null处理情况就会报null异常,lamda提供了Comparator.nullsFirstComparator.nullsLast

students.sorted(Comparator.comparing(Student::getName,Comparator.nullsLast(Comparator.naturalOrder())).reversed()
.thenComparing(Student::getAge).reversed())
.collect(Collectors.toList()));
上一篇下一篇

猜你喜欢

热点阅读