stream将对象转map 一对多 例如最终Map<Long, List<String>>
时间: 2023-11-11 15:03:21 浏览: 186
将对象变成map
可以使用Java 8中的流式编程来将一个对象转换成一个Map<Long, List<String>>,代码如下:
```
Map<Long, List<String>> result = objectList.stream()
.collect(Collectors.groupingBy(Object::getId,
Collectors.mapping(Object::getValue, Collectors.toList())));
```
其中,objectList表示要转换成Map的对象列表,Object::getId表示获取对象的ID,Object::getValue表示获取对象的值。collect方法将转换后的结果收集到一个Map中,groupingBy方法根据ID进行分组,mapping方法将对象的值进行映射,toList方法将映射后的值存储到一个List中。最终的结果就是一个Map<Long, List<String>>类型的Map,其中每个Key都对应一个列表,列表包含多个Value值。
阅读全文