相关疑难解决方法(0)

Java中C++ Pair <L,R>的等价物是什么?

有没有一个很好的理由为什么Pair<L,R>Java中没有?这个C++构造的等价物是什么?我宁愿避免重新实现自己.

似乎1.6提供类似的东西(AbstractMap.SimpleEntry<K,V>),但这看起来很复杂.

java tuples std-pair

655
推荐指数
17
解决办法
45万
查看次数

如何使用多个键实现Map?

我需要一个行为类似于Map的数据结构,但使用多个(不同类型的)键来访问其值.
(我们不要太笼统,让我们说两把钥匙)

钥匙保证是独一无二的.

就像是:

MyMap<K1,K2,V> ...
Run Code Online (Sandbox Code Playgroud)

使用以下方法:

getByKey1(K1 key)...
getByKey2(K2 key)...
containsKey1(K1 key)...
containsKey2(K2 key)...
Run Code Online (Sandbox Code Playgroud)

你有什么建议吗?

我唯一能想到的是:
编写一个内部使用两个Maps的类.

编辑 有些人建议我使用元组,或类似作为Java Map的键,但这对我不起作用:
如上所述,我必须能够通过两个键中的一个来搜索值指定.
地图使用密钥的哈希码并检查它们的相等性.

java data-structures

144
推荐指数
6
解决办法
23万
查看次数

单值映射Java的多个键

我认为我的问题与此类似:如何使用多个键实现Map?但有一个重要的区别.在那个问题中(如果我对它的理解是正确的,请告诉我,如果不是这样),键应该始终是唯一的.我希望在表单中有一个Map: MyMap ,其中键不一定是唯一的.如果这没有意义,我基本上想要一个二维数组,而不是通过坐标引用元素,我想通过成对的对象来引用它们.

任何人对这个有效的图书馆或自己实施的好方法都有任何想法吗?对于图书馆来说,我看过Apache Commons和Guava,似乎没有我想要的东西.

java map multidimensional-array data-structures

20
推荐指数
2
解决办法
4万
查看次数