我有多张地图(例如100张或更多张)。我想把它们列在这样的列表中:
ArrayList<HashMap> mapsList = new ArryaList(Arrays.asList(map1, map2, map3 ..., map100);
有没有办法将所有这些放在一个循环中以避免写入相同的名称一百次只更改其中的数字?
@EDIT
我有这样的地图:
HashMap<String, Integer> map1 = new HashMap<>();
map1.put("x", 47);
...
nextmap here...
答案 0 :(得分:1)
使用方法生成地图,插入值并将其添加到列表中。
public Map<String, Integer> newMap(Values... values){
Map<String, integer> map = new HashMap<>();
for(Values v : values){
map.put(v.getKey(), v.getValue());
}
list.add(map);
return map;
}
Values
同时拥有键和值
class Values{
String key;
Integer value;
public Values(String key, Integer value){
...
}
//getters;
}
这样,您无需使用map1
,map2
,map3
,...而只需调用该方法。
newMap(new Values("x", 47), new Values("y", 12));
newMap(new Values("x", 4));
...