高效的HashMap遍历

时间:2014-05-07 13:15:04

标签: java collections map hashmap

我正在做我的开发工作,并想知道在代码实践,内存和时间效率方面哪一个可能更好?

public static void printtHashmap(Map<?,?> hm)   {
    for(Object key : hm.keySet())
    {
        System.out.println(key+" "+hm.get(key));
    }
}

public static void printHashMapByEntry(Map<?,?> hm) {
    for(Map.Entry<?,?> entry: hm.entrySet())
    {
        System.out.println(entry.getKey()+" "+entry.getValue());
    }

1 个答案:

答案 0 :(得分:6)

以下是更好的

public static void printHashMapByEntry(Map<?,?> hm) {
    for(Map.Entry<?,?> entry: hm.entrySet())
    {
        System.out.println(entry.getKey()+" "+entry.getValue());
    }
}

因为在其他情况下,对于每个键,您必须在整个地图中再次查找相应的值。