当前位置: 首页 > 知识库问答 >
问题:

Collectors.map中的重复密钥非法状态异常[Duplicate]

齐振
2023-03-14

代码如下。我看到重复的密钥,非法状态异常。

List<User> allusers = Helper.getAllUsers(someKey);
Map<String, User> allusersMap = allusers.stream()
.collect(Collectors.toMap(originalUser-> originalUser.getName(),
originalUser-> originalUser));

共有1个答案

呼延聪
2023-03-14

toMap上的Java文档非常清楚地解释了这一点:

如果映射的键包含重复项(根据Object.equals(Object)),则在执行收集操作时会引发IllegalStateException。如果映射的键可能有重复项,请改用toMap(函数、函数、二进制运算符)。

因此,您的数据有多个同名用户toMap正在按预期工作。rtm总是好的:-)

 类似资料:
  • 问题内容: 如何将轮询线程传递给另一个线程进行处理。程序执行在具有主方法和线程池的控制器类中: 主类控制器 具有轮询类的线程的方法 具有proc类的线程的方法 轮询类和控制器类 我的任务和问题是: 1.控制器应同时处理轮询器和处理器线程,并且应仅调用轮询器和处理器线程 2.现在我的问题是如何使轮询线程等待3秒并并行通知处理器。 我得到如下错误: 这里如何实现异步处理? 问题答案: 你需要阅读的东西

  • 问题内容: 我有一个带有唯一主键列的表。有时,当我执行查询时会收到错误消息,因为该值已被使用。 我可以使用和捕获此特定错误吗? 问题答案: 看起来mysql为重复的主键抛出了1062错误代码。您可以检查sql异常的错误代码: 注意,这种方法不是跨数据库供应商的,因为不同的供应商对于重复的PK可能具有不同的错误代码。

  • 我正在尝试使用下面的快速加载API 连接…等是完美的。 我确切地知道它在哪里失败 例外情况是 < code >线程“main”Java . lang . illegalstateexception中出现异常:示例失败。 这是我试图上传的表格。它是格式,当我通过记事本打开它时,它看起来像这样 为什么我会得到这个异常?我该如何改进?据我理解问题是< code > pstmtfld . setascii

  • 问题内容: 这是我的用法- 另外,我在http GET周围放置了一个finally块- 这是我的堆栈跟踪- 我正在使用Quartz计划监视Http端点的工作。这是我的连接池配置 Maven依赖..工件版本 编辑 -好吧,通过不关闭finally块中的CloseableHttpClient,问题解决了。有人能说出为什么这样吗? 如果关闭客户端,为什么连接池会关闭? 是上面的closeablehttp

  • 这是我如何使用它 - 此外,我已经在超文本传输协议GET周围放置了一个最终块- 这是我的堆栈跟踪- 我正在使用Quartz来安排监控Httpendpoint的工作…这是我的连接池配置 马文依赖..神器版本 编辑-嗯,这个问题通过在最后一个块中不关闭CloseableHttp客户端而得到解决…有人能告诉我为什么它会这样吗?如果我关闭客户端,为什么连接池会关闭? 上面的closeablehttpcli

  • 我的应用程序处于生产状态,它支持从API 8到23。我最近更新了应用程序,使其具有使用导航抽屉的材料设计。此版本支持从 14 到 23。 该应用程序在API 21[Lollipop]及以上版本上运行良好,但有4.4“java illegalstateexception android.support.v7.app.AppCompatDelegateImplV7.createSubDecor”的崩溃