Map
1.Map和Collection没有继承关系
2.Map集合以key和value的方式存储数据:键值对
key和value都是引用数据类型
key和value都是存储对象的内存地址
key起到主导的地位,value是key的一个附属品
3.


![]()
4.Map集合的遍历
方法一:
1 //第一种方式:获取所有的key,通过遍历key,来遍历value.所有的key是一个Set集合 2 Set<Integer>keys=map.keySet(); 3 Iterator<Integer> it=keys.iterator(); 4
while(it.hasNext()){ 5 Integer key=it.next(); 6 String value=map.get(key); 7 System.out.println(key+"----->"+value); 8 }
//foreach方法
Set<Integer>keys=map.keySet(); Iterator<Integer> it=keys.iterator(); for(Integer key:keys){ System.out.println(key+"------>"+map.get(key)); }
方法二:
Set<Map.Entry<K,V>> entrySet(),这是将Map集合全部转成Set集合,Set集合中元素的类型是:Map.Entry

1 Set<Map.Entry<Integer, String>>set=map.entrySet();//将Map集合转成Set集合 2 Iterator<Map.Entry<Integer, String>>it2=set.iterator();//用迭代器迭代Set集合 3 while(it2.hasNext()){ 4 Map.Entry<Integer, String>node=it2.next(); 5 Integer key=node.getKey(); 6 String value=node.getValue(); 7 System.out.println(key+"------>"+value); 8 9 } 10
1 //foreach方法 2 Set<Map.Entry<Integer, String>>set=map.entrySet();//将Map集合转成Set集合 3 for(Map.Entry<Integer, String> node:set){ 4 System.out.println(node.getKey()+"------>"+node.getValue()); 5 }
注:foreach方式效率高,因为获取key和value都是直接从node对象中获取的属性值,这种方式适合大数据量

浙公网安备 33010602011771号