概述
用stream流根据实体的某个属性对列表进行排序
假设有一个实体类 Person,包含两个属性 name 和 age,你可以使用 stream 流的 sorted() 方法来按照某两个字段进行排序。以下是一个示例代码:
List<Person> personList = new ArrayList<>();
// 填充 personList
List<Person> sortedList = personList.stream()
.sorted(Comparator.comparing(Person::getName).thenComparing(Person::getAge))
.collect(Collectors.toList());
sortedList.forEach(System.out::println);
在上述代码中,我们将 personList 转换成流后,调用了 sorted() 方法,并且使用 Comparator 的 comparing() 和 thenComparing() 方法来指定先按照 name 字段排序,再按照 age 字段排序。
最后,我们收集结果并将其存储在一个新列表 sortedList 中,然后打印出每个人的信息。文章来源:https://www.toymoban.com/news/detail-740722.html
当然,这只是一个示例。你需要根据具体的需求和实体类的情况来修改代码。文章来源地址https://www.toymoban.com/news/detail-740722.html
Map<String, ArrayList<String>> temp = list.stream()
.collect(Collectors.groupingBy(TenantProjectUserDTO::getTenantCode,
Collectors.collectingAndThen(
Collectors.mapping(TenantProjectUserDTO::getProjectCode,
Collectors.toSet()),
ArrayList::new)));
Map<String, ArrayList<String>> temp = list.stream()
.collect(Collectors.groupingBy(TenantProjectUserDTO::getTenantCode,
Collectors.collectingAndThen(
Collectors.mapping(TenantProjectUserDTO::getProjectCode,
Collectors.toCollection(TreeSet::new)),
ArrayList::new)));
到了这里,关于java用stream根据实体的某个属性对列表进行排序的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!