如何访问源自数据库的ArrayList内的哈希映射?

时间:2014-10-31 19:37:15

标签: java database arraylist iterator hashmap

我有一个带有一堆散列图的ArrayList。每个散列映射都具有源自数据库的列的名称和值。如何访问这些列的值?

Netbeans变量检查员告诉我:

avaliacaoList = (java.util.ArrayList) [{id_grade_curricular=5476, posicao=...

调试器向我提供以下值:

ArrayList with hashmaps

我需要迭代ArrayList,访问每个hashmap及其值。我尝试了很多方法来迭代这个ArrayList,但我找不到一种方法来访问每个"记录"的字段 id_grade_curricular (参见橙色箭头)。 有人可以帮我实现这个目标吗?感谢。

3 个答案:

答案 0 :(得分:1)

我假设你有一个哈希图列表,你绝对需要它。

for (HashMap h : avaliacaoList){
    Object result = h.get("id_grade_curricular");
    //do something
}

而不是使用您存储的任何对象。

答案 1 :(得分:1)

请注意,ArrayList中的项目为HashMaps。然后,您必须实际访问所需的键:值对。

for (HashMap entry : avaliacaoList){
    int value = entry.get("id_grade_curricular")
    // Do something with value here
}

请注意,我假设地图的类型为HashMap<string,int>,因为这就是您的示例的样子。如果不是这样,请相应调整类型。

答案 2 :(得分:1)

请不要使用Raw Types。您可以迭代List并使用

之类的内容调用Map.get()
List<HashMap<String,String>> avaliacaoList;
for (HashMap<String,String> map : avaliacaoList) {
  System.out.println(map.get("id_grade_curricular"));
}