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对象中获取的属性值,这种方式适合大数据量

posted @ 2021-01-15 21:28  L1998  阅读(49)  评论(0)    收藏  举报