哪个更适合表现 Java Collection中的 entryset()OR keyset()?
(I)在每个循环中使用enrtySet()
for (Map.Entry<String,Integer> entry : testMap.entrySet()) {
entry.getKey();
entry.getValue();`enter code here`
}
(II)在每个循环中使用keySet()
for (String key : testMap.keySet()) {
testMap.get(key);`enter code here`
}
答案 0 :(得分:5)
这实际上取决于您的要求。这些集合只代表三个不同的用例:如果你的“迭代”代码
只需要密钥,迭代keySet()
需要访问key + value;使用entrySet()
需要值,请使用values()
就是这样。含义:当您只想打印地图的值时,没有必要处理迭代键,然后获取值。例如。
如果您需要键+值,我建议使用清晰度来使用entrySet()
。在遇到实际问题之前,不要担心性能问题。然后开始基准测试您的代码,以了解会发生什么。