结构数据,如map <key,<value>&gt;在Java中

时间:2016-06-23 09:33:15

标签: java data-structures hashmap key-value

我需要一种像Hashmap这样的数据结构,但我需要将一个值列表与一个键相关联:&gt;

Java上是否已有预定义的结构?或者我应该实施它?

4 个答案:

答案 0 :(得分:3)

您确实可以使用Map<Key, List<Value>>,但Google Guava中也有Multimap,对于ArrayListMultimap等多种实现,您的情况也很有趣。

答案 1 :(得分:2)

JDK 1.7已包含MultiValuedMap,其签名类似于ALTER TABLE youTable ADD COLUMN `status` VARCHAR(100) AFTER fieldxx, ADD COLUMN `PRIOR_STATUS` VARCHAR(100) BEFORE fieldzz; 。我希望这会有所帮助。

答案 2 :(得分:1)

实际上在java中没有此类型的内置集合,但您可以声明为Map<Key, List<YourClass>>.

即使您可以使用Google的Guava收藏库,也可以使用MultiMaps。 请参阅此链接以了解如何使用它:https://dzone.com/articles/multimaps-google-guava

答案 3 :(得分:0)

您可以根据需要创建POJO类,并可以创建HashMap,如: (我在String,POJO类Car中取钥匙)

    Map<String, List<Car>> carDetails = new HashMap<String, List<Car>>();

class Car{
    private String headLight;

    public void setHeadLine(String headLight){
          this.headLight = headLight;
     }

    public String getHeadLight(){
           return headLight;
     }
    }

这使得数据库中的表与主键一样。 希望这有助于...... !!!