我想要一个包含一个键和多个值的字典(HashTable,Map,...)。
即。我想要像
这样的东西 HashTable<Key, [value1, value2]>
我如何得到这个?
答案 0 :(得分:7)
我认为最简单的方法:
Map<Key, List<Value>>
如果你想要一个元组(对,3或......),你可以创建一个Pair
类。
class Pair<E,F, ...> {
public E one;
public F two;
...
}
然后像这样使用Map
:
Map<Key, Pair<Value, Value>>
答案 1 :(得分:2)
HashTable<Key, List<Value>>
怎么样?
答案 2 :(得分:1)
只是将数组存储为具有定义长度的值?
答案 3 :(得分:1)
为您的值创建一个新的(非公共)类或使用多个映射(可能更慢)。
答案 4 :(得分:1)
Google的Guava提供了一个执行此操作的多图。 Javadoc
答案 5 :(得分:0)
Java语言中没有元组这样的东西,所以你可以使用一些提议:
你也可以做一个相当普遍的对象:配对。
public Pair<A,B> {
public Pair(A a, B b) {
this.a = a;
this.b = b;
}
public A a() { return a; }
public B b() { return b; }
}