通过迭代器遍历Map的entrySet或keySet。 Map<String, Integer> map =newHashMap<>(); map.put("one", 1); map.put("two", 2); map.put("three", 3); Iterator<Map.Entry<String, Integer>> iterator =map.entrySet().iterator();while(iterator.hasNext()) { Map.Entry<String, Integer> entry =i...
3、通过while,Iterator和map.entrySet()来遍历 上面的迭代器是使用for来遍历,那我们自然可以想到还可以用while来进行遍历,所以代码如下所示。 publicstaticvoidtestMap3(Map<Integer, Integer>map) { Iterator<Map.Entry<Integer, Integer>> it =map.entrySet().iterator();longsum = 0;while(it.hasNext()) { ...
方法三使用Iterator遍历 使用泛型: [java]view plaincopy Map<Integer, Integer> map =newHashMap<Integer, Integer>(); Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet().iterator(); while(entries.hasNext()) { Map.Entry<Integer, Integer> entry = entries.next(); System.out.println("...
推荐使用entrySet遍历Map类集合KV (文章中的第四种方式),而不是 keySet 方式进行遍历。 keySet 其实是遍历了 2 次,第一次是转为 Iterator 对象,第二次是从 hashMap 中取出 key 所对应的 value值。而 entrySet 只是遍历了一次,就把 key 和 value 都放到了 entry 中,效率更高。 values()返回的是 V 值集合...
方法三:使用Iterator遍历 使用泛型: Map<Integer, Integer> map = new HashMap<Integer, Integer>(); Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet().iterator(); while (entries.hasNext()) { Map.Entry<Integer, Integer> entry =entries.next(); ...
putMapEntries 方法在我们调用 putAll 方法的时候会用到。2、通过 for, Iterator 和 map.entrySet() 来遍历我们第一个方法是直接通过 for 和 entrySet() 来遍历的,这次我们使用 entrySet() 的迭代器来遍历,代码如下。publicstaticvoidtestMap2(Map<Integer, Integer> map){long sum = ;for (...
使用迭代器遍历Map集合也是一种常用的方法。它与使用for-each循环遍历Map集合的方式类似,但是更加灵活,可以在遍历过程中进行删除、修改等操作。在使用迭代器遍历Map集合时,需要使用entrySet()方法获取到Map中的键值对集合,并在每次循环中使用iterator.next()方法获取到当前的键值对,再使用entry.getKey()和entry.get...
通过map.entrySet()方法,可以获取到一个set集合,而这个集合的每一个元素就是一个键值对。如此就可以通过遍历通过map.entrySet()获取到的set集合来达到遍历Map的目的了。示例代码展示一下。通过这种方式,可以同时遍历到Map的key和value。遍历集合的地方就少不了会出现迭代器(Iterator)的身影。下面来一段示例,看看...
我们第一个方法是直接通过 for 和 entrySet 来遍历的,这次我们使用 entrySet 的迭代器来遍历,代码如下。 publicstaticvoidtestMap2(Map<Integer, Integer> map){ longsum =0; for(Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet.iterator; entries.hasNext; ) { ...