List<Person> 通过stream函数 转换成 Map<String, List<Person>>
时间: 2023-06-08 11:08:47 浏览: 169
List转换成String数组
4星 · 用户满意度95%
可以使用Java8中的流(stream)和Collectors工具类来实现这个转换。示例代码如下:
```
Map<String, List<Person>> personMap = personList.stream()
.collect(Collectors.groupingBy(Person::getName));
```
这段代码假设你有一个名为`personList`的`List<Person>`类型的对象。使用`stream()`方法将它转换成了一个流,然后使用`groupingBy()`方法对这个流进行分组,其中`Person::getName`是分组依据,它返回`Person`类型的姓名。最后将结果转换成了`Map<String, List<Person>>`类型的对象。这样你就得到了一个以姓名为键,以该姓名对应的所有人的列表为值的映射关系。
阅读全文