gpt4 book ai didi

java - 旋转 map 的实用函数?

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:55:42 24 4
gpt4 key购买 nike

Util 库(commonsXXX 或其他)中是否有可以旋转 map 的函数。

通过旋转我的意思是我有一个 Map<User,Set<Permission>>应该“旋转”到 Map<Permission,Set<User>>

我知道这并不难实现,但就“不要重复发明轮子”而言,使用通用的现有库似乎更好。

最佳答案

我需要做与您描述的相同的事情,我使用了来自 commons-collections 的 multimap 并编写了我自己的反函数。 (那至少是 3 年前,使用 jdk1.4,所以 guava 不是一个选项。)

但是如果您将原始映射更改为 SetMultimap(无论如何,在将键映射到值集合时我更喜欢多映射,因为它们使插入值更容易),那么您可以使用 com.google.common.collect.Multimaps.invertFrom :

public static <K,V,M extends Multimap<K,V>> M invertFrom(Multimap<? extends V,? extends K> source,
M dest)

Copies each key-value mapping in source into dest, with its key and value reversed.

Parameters:
source - any multimap
dest - the multimap to copy into; usually empty
Returns:
dest

关于java - 旋转 map 的实用函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7205236/

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