java.lang.IllegalStateException: Duplicate key 0
错误信息
java.lang.IllegalStateException: Duplicate key 测试1
at java.util.stream.Collectors.lambda$throwingMerger$0(Collectors.java:133)
at java.util.HashMap.merge(HashMap.java:1245)
at java.util.stream.Collectors.lambda$toMap$58(Collectors.java:1320)
at java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
测试代码
import java.util.AbstractMap;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @Author: Huathy
* @ClassPath: PACKAGE_NAME.Test
* @Date: 2021-03-13 17:34
* @Description:
*/
public class Test {
public static void main(String[] args) {
List<Map.Entry> list = new ArrayList<>();
for (int i = 0; i < 3; i++) {
Map.Entry entry = new AbstractMap.SimpleEntry<>(1,i);
list.add(entry);
}
Map<Object, Object> map = list.stream().collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
System.out.println(map);
}
}
解决方案
import java.util.AbstractMap;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @Author: Huathy
* @ClassPath: PACKAGE_NAME.Test
* @Date: 2021-03-13 17:34
* @Description:
*/
public class Test {
public static void main(String[] args) {
List<Map.Entry> list = new ArrayList<>();
for (int i = 0; i < 3; i++) {
Map.Entry entry = new AbstractMap.SimpleEntry<>(1,i);
list.add(entry);
}
Map<Object, Object> map = list.stream().collect(
Collectors.toMap(
Map.Entry::getKey,
Map.Entry::getValue,
//以最后一个元素为准,更新
//(e1,e2) -> e2
//以第一个元素为准,不更新
(e1,e2) -> e1
));
System.out.println(map);
}
}
本文来自博客园,作者:Huathy,遵循 CC 4.0 BY-NC-SA 版权协议。转载请注明原文链接:https://www.cnblogs.com/huathy/p/17253836.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)