Map map=newHashMap();Iterator iter=map.keySet().iterator();while(iter.hasNext()){Object key=iter.next();Object val=map.get(key);} 效率低 二、for each 遍历 第一种: 代码语言:javascript 复制 Map<String,String>map=newHashMap<String,String>();for(String key:map.keySet()){map.get(key)...
mport java.io.IOException;importjava.util.HashMap;importjava.util.Map;publicclassTest{publicstaticvoidmain(String[] args)throwsIOException { Map<Integer, Integer> map =newHashMap<Integer, Integer>(); map.put(1,10); map.put(2,20);// Iterating entries using a For Each loopfor(Map.Entry<I...
那是因为在使用迭代器或者 for 循环时,其实已经遍历了一遍 Map 集合了,因此再使用map.get(key)查询时,相当于遍历了两遍。 而EntrySet只遍历了一遍 Map 集合,之后通过代码“Entry<Integer, String> entry = iterator.next()”把对象的key和value值都放入到了Entry对象中,因此再获取key和value值时就无需再遍历 M...
使用Iterator遍历: HashMap<String, Integer> map = new HashMap<>(); map.put("A", 1); map.put("B", 2); map.put("C", 3); Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry<String, Integer> entry = iterator.next...
Map集合是以键值对的方式存储数据的,Map集合的遍历因此不像数组一样直接进行遍历。java的开发者提供了两种方式对Map集合进行遍历操作。一种是KeySet方式,另一种是EntrySet方式。 二、EntrySet方式遍历Map集合 1、首先要创建一个Map集合 Map<String,Integer> map=new HashMap<String,Integer>(); ...
最后使用forEach()方法遍历集合,输出到控制台。下面是一个示例代码:Map map = new HashMap<>();map.put("apple", 1);map.put("banana", 2);map.put("orange", 3);map.entrySet().stream().forEach(entry -> System.out.println(entry.getKey() + " = " + entry.getValue()));
hashMap.put("key3","value3"); hashMap.put("key4","value4"); 1. 2. 3. 4. 5. 2、遍历 2.1、方法一:先用 hashMap.keySet() 方法取出所有的 key 的集合,再用增强循环 for 遍历 System.out.println("===1、先用 hashMap.keySet() 方法取出所有的 key 的集合,再用增强循环 for 遍历==="...
对于keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。而entryset只是遍历了第一次,他把key和value都放到了entry中,所以就快了。 //第二种 System.out.println("通过Map.entrySet使用iterator遍历key和value:"); Iterator> it = map.entrySet().iterator(); ...
Map<String,String> map=new HashMap<String,String>(); map.put("1", "value1"); map.put("2", "value2"); map.put("3", "value3"); map.put("4", "value4"); //第一种:普通使用,二次取值(性能差) System.out.println("\n通过Map.keySet遍历key和value:"); ...