在JDK1.8中针对stream流的使用:
1.如果存在集合list需要根据list对象中某个字段进行排序,用法如下:
正序 asc:
List.stream().sorted(Comparator.comparing(xxxEntity::getId)).collect(Collectors.toList());
倒叙 desc:
List.stream().sorted(Comparator.comparing(xxEntity::getId).reversed()).collect(Collectors.toList());
2.如果对象是个map,处理方案可以先将map转为对象entity之后使用用法1处理,也可以使用如下方式:
List<Map<String,Object>> dataList = xxList.stream().sorted((o1, o2) -> {
if (o1.get("age").toString().compareTo(o2.get("age").toString()) > 0) {
return -1;
} else return 1;
}).collect(Collectors.toList());