android获取HashMap数组的值

时间:2012-11-06 11:34:05

标签: java android hashmap key-value

我试图获取Hashmap数组的值,但我得到索引/键。

ArrayList<HashMap<String, String>> menuItems = new ArrayList<HashMap<String, String>>();

编码我如何从解析器中获取值

 HashMap<String, String> map = new HashMap<String, String>();
Element e = (Element) nl.item(i);
map.put(KEY_LAT, parser.getValue(e, KEY_LAT));
map.put(KEY_LON, parser.getValue(e, KEY_LON));
map.put(KEY_NAME, parser.getValue(e, KEY_NAME));
menuItems.add(map);

然后我尝试获取值,但我收到索引。

for (int i = 0; i < menuItems.size(); i++){
        int latitude = Integer.parseInt(KEY_LAT);
        int longitude = Integer.parseInt(KEY_LON);
        itemizedOverlay.addOverlayItem(latitude, longitude, KEY_NAME, makerDefault);
    }

如何从menuItems数组中获取值? 在其他活动中,我获取值,但通过TextView使用。还有其他方法吗?

2 个答案:

答案 0 :(得分:4)

试试这个:

for (Map<String, String> menuItem : menuItems) {
    int latitude = Integer.parseInt(menuItem.get(KEY_LAT));
    int longitude = Integer.parseInt(menuItem.get(KEY_LON));
    itemizedOverlay.addOverlayItem(latitude, longitude, KEY_NAME, makerDefault);
}

答案 1 :(得分:0)

迭代数组最好这样做:

for (HashMap map: menuItems) {
}

然后你可以访问地图本身:

for (HashMap map: menuItems) {
    String value = map.get(key);
}