Java8根据list中某个字段排序/排序跳过空值/排序空指针


排序

List<User> list = new ArrayList<>(tempList);//tempList中有user对象
list.stream().sorted(Comparator.comparing(User::getSort)).collect(Collectors.toList());
return list;

//需要逆序
list.stream().sorted(Comparator.comparing(User::getSort).reversed()).collect(Collectors.toList());

//降序且空值排在最后;nullLast即null值在最后,reverseOrder整个序列降序,最后结果示例 5,4,3,null,null 如果是naturalOrder(),结果示例3,4,5,null,null
//同理,前边使用nullsFirst,则null值在前边,后边控制其他值的降序升序
list.stream().sorted(Comparator.comparing(User::getsort,Comparator.nullsLast(Comparator.reverseOrder()))).collect(Collectors.toList);

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM