gpt4 book ai didi

java - 在 Multimap 内循环 Multimap

转载 作者:行者123 更新时间:2023-12-02 01:16:49 27 4
gpt4 key购买 nike

我在 Multimap 中创建了 Integer 和 Multimap,并且尝试循环获取键和值。然而,对于 Multimap,它以数组形式返回,我无法删除该数组并仅获取 int。

这是我的代码

public static void main(String[] args) throws ParseException {

Multimap<Integer, Integer> linkedHashMap3 = LinkedListMultimap.create();
linkedHashMap3.put(1, 2);

Multimap<Integer, Multimap<Integer, Integer>> linkedHashMap2 = LinkedListMultimap.create();
linkedHashMap2.put(3, linkedHashMap3);

for (Entry<Integer, Multimap<Integer, Integer>> st : linkedHashMap2.entries()) {

System.out.println(st.getValue().keySet());//1
System.out.println(st.getValue().values());//2
System.out.println(st.getKey());//2
}
}

现在的结果

 [1]
[2]
3

但我希望结果是:

 1
2
3

最佳答案

你可以flatMap它:

st.values().stream()
.flatMap(innerMap -> innerMap.values().stream())
.collect(Collectors.toList());

关于java - 在 Multimap 内循环 Multimap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58434696/

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