下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第java8toMap问题(key重复如何解决)目录java8toMap(key重复解决)Collectors.toMap的key重复解决方案一解决方案二
java8toMap(key重复解决)
使用stream的toMap()函数时,当key重复,系统会报错相同的key不能形成一个map,那么需要解决这个问题
相同key的情况下,丢弃重复的只保留一个相同key的情况下,把value变成list,形成Map(Object,ListObject)的形式
1.当key重复,使用最后一个value为值
2.当key重复,使用list收集
Collectors.toMap的key重复
MapString,BottomAccountmap=bottomAccountList.stream().collect(Collectors.toMap(BottomAccount::getGoodName,Function.identity()));
如这个地方,如果使用GoodName为map的key,货物名称有可能会重复,这时候就会报DuplicateKey的问题,其实是map的key重复了,首先查看源码:
显而易见,throwingMerger()是一个出现异常时默认执行的方法,可以看到,入参是HashMap,大胆猜测、小心求证,我们猜最终是由HashMap去执行的Merger方法,
看HashMap里的一段代码:
这就能证明当出现map的key重复时会报错DuplicateKey的异常了。
如果不想抛异常,自己给传一个新的key值用于替换原有值。
所以,
解决方案一
给重复的Key设置一个新的值
MapInteger,Stringmap=list.stream().collect(Collectors.toMap(Person::getId,Person::getName,(oldValue,newValue)-newValue));
但是考虑到实际业务中,给重复的key设置一个新的值并不符合需求,所以,
解决方案二
使用其他字段为map的key,如主键id
MapString,BottomAccountmap=bottomAccountList.stream().collect(Collectors.toMap(BottomAccount::getId,Function.identity()));
原来的map中的key就变成了value
map.values().stream().map(BottomAccount::getGoodName
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东中山大学附属第一医院人体器官获取组织工作人员招聘4人笔试参考题库及答案解析
- 2026湖南怀化市溆浦县公开招聘事业单位工作人员70人笔试参考题库及答案解析
- 2026年西安碑林区柏树林社区卫生服务中心见习生招聘笔试参考试题及答案解析
- 2026年幼儿园指南理论知识
- 2026年动画设计师招聘考试题集
- 2026年会计从业资格考试仿真题解析与模拟
- 2026年中国糖画师技能等级考试预测题集
- 2026广西北海市合浦县委党校招录城镇公益性岗位人员1人笔试备考题库及答案解析
- 2026年金融学本科高频考点题
- 2026年教师年度考核工作述职
- 生物浙江宁波市三锋联盟2025-2026学年度高一年级第二(下)学期期中联考(4.22-4.24)
- 2026年二级建造师二建法规考前预测重点知识强化记忆总结笔记
- 2026云南省有色地质局楚雄勘查院下属企业招聘工作人员11人笔试备考试题及答案解析
- 心血管科试卷及分析
- 2026四川发展(控股)有限责任公司所属公司招聘5人笔试参考题库及答案解析
- 湖北省武汉市2026届高三毕业生四月调研考试语文试卷(含答案)
- 养老机构防灾避险课件
- 2026年辽宁能源集团招聘考试指南及模拟题解析
- 2026广东广州市黄埔区大沙街道招聘编外聘用人员4人备考题库及参考答案详解
- 国家事业单位招聘2025中国工艺美术馆招聘拟聘人员笔试历年参考题库典型考点附带答案详解(3卷合一)
- 企业管理 华为会议接待全流程手册SOP
评论
0/150
提交评论