gpt4 book ai didi

java - DoubleKey Map 实现问题

转载 作者:行者123 更新时间:2023-12-01 18:46:00 25 4
gpt4 key购买 nike

有没有一种简洁的方法在Java中生成DoubleKey Map。我在这里找到了几个答案,但没有一个能满足我的要求。

要求:

比方说 K1,K2,V

  1. 只有给定 K1,K2 才能定位唯一值。通过这种方式创建以下内容不起作用。

    Map<K2, K1> m2;
    Map<K1, V> m1;//here K1 needs have multiple V's.
  2. 如果通过 K1 搜索,它应该给出 Map<K2,V> ,反之亦然。

我唯一能做的就是创造

Map<K1,Map<K2,V>>
Map<K2,Map<K1,V>>

并且每次都维护两者。代码看起来很乏味。

即使仅使用这个解决方案,一旦扩展到三重 Key Map,那将是一场灾难。

最佳答案

如果第三方库是公平的游戏,这听起来像 Guava 的 Table 将会是完美的。 Table<R, C, V>表示具有“行”键和“列”键的表。您可以使用get(row, column)获取基于两个键的值,或者您可以使用 row(r)column(c)获得 Map对于适当的行或列,或者您可以使用 rowMap()获得 Map<R, Map<C, V>>columnMap()获得 Map<C, Map<R, V>> .

如果您无法使用第三方库,那么您将无法找到比嵌套 Map 更好的解决方案您已经提到过的解决方案。

关于java - DoubleKey Map 实现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17798515/

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