java8 使用stream排序空字段排在前面或后面

时间:2021-12-26 09:48:57

java8 stream排序空字段排在前面或后面

直接粗暴sorted会NPE,这种写法可以避免

?
1
2
list.stream().sorted(Comparator.comparing(l -> l.getCreateTime(), Comparator.nullsFirst(Date::compareTo))).collect(toList());
toOrderList.stream().sorted(Comparator.comparing(l -> l.getContractCode(), Comparator.nullsFirst(String::compareTo))).collect(toList());

java8根据某字段顺序和倒序排列

顺序

?
1
resultList.stream().sorted(Comparator.comparing(Role::getCreateTime)).collect(Collectors.toList());

倒序

?
1
resultList.stream().sorted(Comparator.comparing(Role::getCreateTime).reversed()).collect(Collectors.toList());

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/qq_37043780/article/details/88316355