解析JSON文件时:
{
"heading1" : [
{
"heading2" : {
"subhead2" : {
"value" : "value<heading2>"
}
},
"heading3" : [
{
"heading4" : {
"subhead4" : "value<heading4>",
},
"heading5" : [
{
"subhead51" : {
"511" : "value<heading51>",
},
"subhead52" : {
"522" : "value<heading52>",
},
<..similar such heading5 sets>
}
],
}
}
}
],
}
我有一个ArrayList变量,如下所示。
List<Map<String,String>> childMap = new ArrayList<Hashmap<String,String>>();
我正在为这个childMap获取值,如下所示:
for(i = 0; i<result.length; i++){
Map<String,String> childSubMap = new HashMap<String,String>();
childsubMap.put(heading51,value<heading51>);
childsubMap.put(heading52,value<heading52>);
childMap.add(childSubMap);
}
父地图变量:
Map<String,String> parentMap = new HashMap<String,String>();
parentMap.put(heading2,value<heading2>);
parentMap.put(heading4,value<heading4>);
我正在使用最终的组合地图进行数据提取。
有没有办法将它组合起来如下:
Key | Value
__________________________________________________________
heading2, value<heading2> | <Set 1>
heading4, value<heading4> | heading51, value<heading51>
| heading52, value<heading52>
| <Set 2>
| heading51, value<heading51>
| heading52, value<heading52>
| ..<many such Sets>
提前感谢您的帮助!
答案 0 :(得分:2)
如果您只想将列表中的所有地图合并到一个地图中,那么请执行
for (Map<String,String> m : childMap)
{
parentMap.putAll(childMap);
}
如果您有任何重复的密钥,最后一个密钥将被保留,其余密钥将被丢弃。