我有一个List<PriceProtocolItem> items 数据结构,想让items 集合中以PriceProtocolItem 中字段id为key 生成Map<id,List<PriceProtocolItem >>结构
时间: 2024-05-10 15:21:32 浏览: 55
Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并
可以使用Java 8的Stream和Collectors来实现这个需求:
```
Map<Long, List<PriceProtocolItem>> map = items.stream()
.collect(Collectors.groupingBy(PriceProtocolItem::getId));
```
上面的代码将items集合中的元素按照PriceProtocolItem的id字段进行分组,并生成Map<id, List<PriceProtocolItem>>结构,其中id为键,对应的元素列表为值。
阅读全文