高效的HashMap遍历

ani*_*ban -1 java collections hashmap map

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

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());
    }
Run Code Online (Sandbox Code Playgroud)

Ani*_*kur 6

以下是更好的

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

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