哪个更适合Java Collection中的Performance entryset()OR keyset()?
(I)为每个循环使用enrtySet()
for (Map.Entry<String,Integer> entry : testMap.entrySet()) {
entry.getKey();
entry.getValue();`enter code here`
}
Run Code Online (Sandbox Code Playgroud)
(II)对每个循环使用keySet()
for (String key : testMap.keySet()) {
testMap.get(key);`enter code here`
}
Run Code Online (Sandbox Code Playgroud)
这实际上取决于您的要求.这些集合只代表三种不同的用例:如果你的"迭代"代码
只需要键,迭代keySet()
需要访问键+值; 使用entrySet()
需要值,使用值()
而已.含义:当您只想打印地图的值时,没有必要处理迭代键,然后获取值.
如果你需要键+值,我建议清楚使用entrySet().在遇到实际问题之前,不要担心性能问题.然后开始对代码进行基准测试,以了解会发生什么.
| 归档时间: |
|
| 查看次数: |
1759 次 |
| 最近记录: |