我需要一种像Hashmap这样的数据结构,但我需要将一个值列表与一个键相关联:>
Java上是否已有预定义的结构?或者我应该实施它?
答案 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;
}
}
这使得数据库中的表与主键一样。 希望这有助于...... !!!