我第一次在我的代码中使用地图,因此需要您的专家提供一些意见。
我的要求是我必须从数据库中检查两个不同的表。第一个表格中的值将用作键,第二个表格的值将用作键的值。
每个键都有多个值,因此我会将所有值存储在arraylist中的每个键中,即我的Map将像 MAP。
现在,我的问题如下:
如何实施?我是否遵循正确的方法?如果不是什么是更好的方法?
由于
答案 0 :(得分:0)
使用Java中的列表,您无需事先了解大小。这是阵列的要求。因此,只需创建您的地图
地图> myMap = new HashMap<>();
这应该有效
if(myMap.containsKey(someKey)){ myMap.get(someKey)。新增(someValue中); //将值添加到地图中已有的列表中 } else { myMap.put(someKey,Arrays.asList(someValue)); //插入新的键/值 }
如果你需要迭代列表中的所有值,那么你需要一个嵌套的for循环
for(Map.Entry> entry:myMap.entrySet()){ //你的key = entry.getKey() for(ValueType value:entry.getValue()){ //使用你的价值 } }
http://docs.oracle.com/javase/7/docs/api/java/util/Map.html
希望有所帮助。