一位同事今天发出了一条提示,指出后面的代码片断效率更高,因为它不必在每次迭代(如前者)中执行映射查找(# 1)。对键集进行迭代和对条目集的迭代
#2(后者)的效率如何?我只是不明白#1和#2是如何不同的。
**#1 snippet**
:
for (String key : map.keySet())
{
String value = map.get(key); // does lookup for every key
// do something with value
}
**#2 snippet**
:
for (Map.Entry<String, String> entry : map.entrySet())
{
String key = entry.getKey();
String value = entry.getValue();
}
我想你混淆了#1和#2? –
你是对的,它应该交换。 – Wickoo