Java lambda 怎么在list转换map时,把多个参数拼接作为key

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java lambda 怎么在list转换map时,把多个参数拼接作为key相关的知识,希望对你有一定的参考价值。

List<Parts> synList = partsMapper.getPartGroupByVehicleIdOfSyn(parts);
Map<String,Parts> partsMap = new HashMap<>();
for(Parts _parts : synList)
partsMap.put(_parts.getOe()+_parts.getOeId()+_parts.getPartGroupId()+_parts.getStdPartId()+_parts.getBrandCode(),_parts);


如何把以上代码的List转为map集合改为lambda实现

参考技术A

代码如下:

Map<String, Parts> synOeMap = synList.stream()
    .collect(Collectors.toMap(k -> k.getOe()+k.getOeId()+k.getPartGroupId()+k.getStdPartId()+k.getBrandCode(), synOe -> synOe));

本回答被提问者采纳
参考技术B as .forEach(n -> a1s.add(n.a1));追问

Map synOeMap = synList.stream().collect(Collectors.toMap(Parts ::getOe, synOe -> synOe)); 如果是这条语句该怎么改?

以上是关于Java lambda 怎么在list转换map时,把多个参数拼接作为key的主要内容,如果未能解决你的问题,请参考以下文章

java中怎么list 转成 map

Java - Lambda List 转 Map 几种方式

java map对象转换成list

关于java的容器类 list,map等的toString()方法

使用Lambda Stream 表达式,将 List<JavaBean> 转换为 List<Map>

怎么办map形转换成list