从HashMap中检索数据<string,arraylist <hashmap <string,=“”string =“”>&gt;&gt; </string,>

时间:2014-07-09 13:15:51

标签: java hashmap

我的数据目前存储在HashMap<String, ArrayList<HashMap<String, String>>>

我希望得到一个值ArrayList<HashMap<String, String>>>的特定值,其中Key是有价值的&#34; FieldName1&#34;。或者,如果我尝试获取ArrayList索引,它会返回Key,值对吗?

最终我要做的是比较这个特定值,其中键是&#34; fieldName1&#34;到arrayList中的另一个&#34; fieldnName1&#34;&#34;如果是这种情况,我应该采用ArrayList的索引位置吗?

谢谢!

编辑*** 使用HashMap<String, ArrayList<HashMap<String, String>>>的原因是因为我要做的是处理excel文件。我读取了我的excel文件中的每一行,并基于该行中的第一个单元格(例如A1),它映射到某个DB表。然后我有一个layoutFile存储数据库表名称及其相应的字段名称。该excel文件中的每个新行都是不同的字段名称。

2 个答案:

答案 0 :(得分:0)

  

或者,如果我尝试获取ArrayList索引,它会返回我   Key,value pair?

这将返回hahsmap对象而没有键值对。

  

最终我要做的是比较这个特定值在哪里   关键是&#34; fieldName1&#34;到另一个&#34; fieldnName1&#34;在...中   数组列表。

不知道你的意思,但在一个hashmap中你不能有重复的键。所以你不能有两个&#34; FieldName1&#34;在hashmap内部。

获取&#34; FieldName1&#34;的值您将遍历初始哈希映射以获取包含具有必需字段的哈希映射的arraylist。首先从hashmap获取所需的arraylist,从arraylist获取所需的hashmap,然后从hashmap中获取相应的字段。

答案 1 :(得分:0)

我想说你可以使用ArrayList的索引,它将返回HashMap对象,然后将一个HashMap的键和值与另一个键的值和值进行比较。