java-如何获取存储在hashmap中的名称 - 值对中的名称字段

时间:2011-11-05 14:03:39

标签: java hashmap

我正在尝试解析包含名称 - 值对的散列图...

存储在散列图中的实体是具有与每个单词对应的数值的单词。

这是我正在使用的代码:

hMap = (HashMap) untypedResult;

/*
    get Collection of values contained in HashMap using
    Collection values() method of HashMap class
*/
c = hMap.values();

//obtain an Iterator for Collection
Iterator itr = c.iterator();

//iterate through HashMap values iterator
while(itr.hasNext())
{
    resp.getWriter().println(" Value= " + itr.next());
    //resp.getWriter().println(" To String of iterator= " + itr.toString());
}

我可以使用上面的代码获得与每个单词相关的数值。我如何获得每个单词的值?

2 个答案:

答案 0 :(得分:4)

这是问题所在:

c = hMap.values();

如果您还想要密钥,则不应致电values()。改为呼叫entrySet()

for (Map.Entry<String, Integer> entry : hMap.entrySet()) {
    resp.getWriter().println("Key " + entry.getKey()
                             + "; value " + entry.getValue());
}

或原始类型(ick):

for (Object rawEntry : hMap.entrySet()) {
    Map.Entry entry = (Map.Entry) rawEntry;
    resp.getWriter().println("Key " + entry.getKey()
                             + "; value " + entry.getValue());
}

答案 1 :(得分:0)