HashMap的遍历的遍历有两种方法:
方法一:使用keySet
Map map = new HashMap(); Iterator iter = map.keySet().iterator(); while (iter.hasNext()) { Object key = iter.next(); Object val = map.get(key); }
该方法其实是遍历了2次,一次是奖keySet转为iterator,一次是从hashmap中取出key所对应的value。
方法二:使用entryset
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(); }
entryset得到的是映射关系(键值对),所以只遍历了一次,同时把key和value取出来了,该方法效率明显高于方法一。