一位同事今天發出了一條提示,指出後面的代碼片斷效率更高,因爲它不必在每次迭代(如前者)中執行映射查找(# 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