map实在是用的太平凡了,所以总结一下,以备下次查看:
方法一:效率高.
Map<String,Object> extendsFields=user.getExtendsFeilds();
for(Entry<String ,Object> extendsField:extendsFields.entrySet()){
String extendsFieldID=extendsField.getKey(); String extendsFieldValue=extendsField.getValue();
afterUpdateUser.addExtendsField(extendsFieldID, extendsField.getValue());
}
方法二:效率高.
Map map = new HashMap();
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
Object key = entry.getKey();
Object val = entry.getValue();
}
方法三:效率低
Map map = new HashMap();
Iterator iter = map.keySet().iterator();
while (iter.hasNext()) {
Object key = iter.next();
Object val = map.get(key);
}
注:对于keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。而entryset只是遍历了第一次,他把key和value都放到了entry中,所以就快了。