使用多个键在集合中查找对象

时间:2013-05-31 21:56:32

标签: java

有一个属性为attr1,attr2,attr3和attr4的类。

我正在寻找一种方法来在一个数组(或ArrayListMap或其他)中加载该类的一堆对象,然后能够根据这些对象检索(搜索)这些对象attr1或attr2。

看起来要走的路是HashMap,但我必须:

  1. 如果我只想要一个HashMap,我将为每个对象分别有两个条目,一个用密钥attr1,一个用密钥attr2

  2. 有两个HashMap个对象,一个带有密钥attr1,另一个带有密钥attr2,根据我要搜索的内容,使用适当的Map

  3. 还有其他优雅的方法吗?是否有MapCollection对象允许我为对象提供多个键?

1 个答案:

答案 0 :(得分:1)

我发现第二个解决方案有两个Map对象非常优雅,每个Map都是一种数据索引。如果你真的想要一个单一的结构,那么你可以使用Guava的Table,它将值映射到一对键。