Map集合的两种取出方式

来源:互联网 发布:java io 装饰器模式 编辑:程序博客网 时间:2022/07/04 22:50

package map;

import java.util.*;
public class MapDemo2 {

 /**
  * @Map集合的两种取出方式:
  *  1.Set<k> keySet:将map中所有的键存到了set集合。以为set集合具备迭代器,
  *         所以可以用迭代方法取出所有的键,再根据get方法,获取每一个键对应的值。
  *
  *       Map集合的取出原理,将map集合转成set集合。再通过迭代器取出。
  *
  *  2.Set<Map.Entry<k,v>> entrySet:将map集合中的映射关系存入到了set集合中,
  *          而这个关系的数据类型是:Map.Entry
  */
 public static void main(String[] args) {
  
  Map<String,String> map = new HashMap<String,String>();
  map.put("01","zhangsan1");
  map.put("02","zhangsan2");
  map.put("03","zhangsan3");
  map.put("04","zhangsan4");
  

  
  //keyset_method(map);
  
  entrySet_methord(map);
  
  
  

 }
 private static void entrySet_methord(Map<String, String> map) {
  //将map集合中的映射关系取出,存入到Set集合中。
  Set<Map.Entry<String, String>> entrySet = map.entrySet();
  
  Iterator<Map.Entry<String, String>> it = entrySet.iterator();
  
  while(it.hasNext()){
   Map.Entry<String, String> me = it.next();
   String key = me.getKey();
   String value = me.getValue();
   
   sop(key+"::"+value);
  }
 }
 
 private static void keyset_method(Map<String, String> map) {
  //先获取map集合中的所有键的set集合,keySet();
  Set<String> keySet = map.keySet();
  
  //有了set集合,就可以获取其迭代器
  Iterator<String> it = keySet.iterator();
  
  while(it.hasNext()){
   String key = it.next();
   //有了键,就可以通过map集合的get方法,获取其对应的值。
   String value = map.get(key);
   sop("key:"+key+"........value:"+value);
  }
 }
 
 private static void sop(Object obj) {
  System.out.println(obj);
 }

}

/*
 *Map.Entry 其实Entry也是一个借口,它是Map接口中的一个内部接口,
 *
 */

0 0