gpt4 book ai didi

Java 8 List 到 Map>

转载 作者:行者123 更新时间:2023-11-29 04:21:04 27 4
gpt4 key购买 nike

我有一个 list

List<MyObject> list;

我想将其转换为 Map<MyObject, List<String>> 的 map

我试过了

Map<MyObject, List<String>> map = list
.stream()
.collect(Collectors.toMap(item -> item, Collections.emptyList()));

但是 Java 对 item->item 不满意:

no instance(s) of type variable(s) T exists so that List<T> conforms to Function<? super T, ? extends U>

感谢帮助

最佳答案

Collectors.toMap 的第二个参数需要一个 Function 将项目转换为将放置在 map 中的值。但是,您提供了 Collections.emptyList(),它不是 Function

看起来你想要每个项目都有一个空列表,所以改变

Collections.emptyList()

item -> Collections.emptyList()

然而,Collections.emptyList()返回一个不可变 空列表,这可能不是您想要的。

Returns an empty list (immutable). This list is serializable.

你可能想要

item -> new ArrayList<>()

关于Java 8 List<K> 到 Map<K, List<String>>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49161657/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com