码迷,mamicode.com
首页 > 其他好文 > 详细

Map

时间:2017-02-07 23:30:32      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:void   sys   color   span   个数   tree   遍历   迭代   cti   

import java.util.HashMap;
import java.util.Map;

/*
在现实生活中有些数据是以映射关系存在的,也就是成对存在的,比如: 
    
    民政局 :
        键                    值
        
        老公                老婆
        身份证            人
        一把要锁       锁
 双列集合:
-------------| Map  如果是实现了Map接口的集合类,具备的特点: 存储的数据都是以键值对的形式存在的,键不可重复,值可以重复。
----------------| HashMap 
----------------| TreeMap
----------------| Hashtable 
 
 Map接口的方法:
     
     添加:
         put(K key, V value) 
         putAll(Map<? extends K,? extends V> m) 
     
     删除
         remove(Object key) 
         clear() 

     获取:
         get(Object key) 
         size() 
     
     判断:
         containsKey(Object key) 
         containsValue(Object value) 
         isEmpty() 

 
 */
public class Demo2 {
    
    public static void main(String[] args) {
        Map<String,String> map = new HashMap<String, String>();
        //添加方法
        map.put("汪峰", "章子怡");
        map.put("文章", "马伊琍");
        map.put("谢霆锋","张柏芝");
        /*
        添加
        System.out.println("返回值:"+map.put("谢霆锋","黄菲"));  // 如果之前没有存在该键,那么返回的是null,如果之前就已经存在该键了,那么就返回该键之前对应 的值。
        Map<String,String> map2 = new HashMap<String, String>();
        map2.put("杨振宁", "翁帆");
        map2.put("习总", "彭丽媛");
        map.putAll(map2); // 把map2的元素添加到map集合中。
        
        */
        
        /*
        删除
        System.out.println("删除的数据是:"+map.remove("汪峰")) ;  //根据键删除一条map中的数据,返回的是该键对应 的值。
        map.clear(); //清空集合中的所有数据。
        */
        
        /* 获取
        System.out.println("根据指定 的键获取对应的值:"+ map.get("文章"));
        System.out.println("获取map集合键值对个数:"+map.size());
        
        
        判断
        System.out.println("判断map集合是否包含指定的键:"+ map.containsKey("文章"));
        System.out.println("判断map集合中是否包含指定 的值:"+ map.containsValue("张柏芝"));
        map.clear();
        System.out.println("判断map集合是否为空元素:"+ map.isEmpty());
        */
        System.out.println("集合的元素:"+ map);
        
        
    }

}
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;

/*
    迭代:
        keySet() 
        values() 
        entrySet() 

*/
public class Demo3 {

    public static void main(String[] args) {
        Map<String,String> map = new HashMap<String, String>();
        //添加方法
        map.put("汪峰", "章子怡");
        map.put("文章", "马伊琍");
        map.put("谢霆锋","张柏芝");
        map.put("成龙", "林凤娇");
        /*
        //map集合中遍历方式一: 使用keySet方法进行遍历       缺点: keySet方法只是返回了所有的键,没有值。 
        Set<String> keys = map.keySet();  //keySet() 把Map集合中的所有键都保存到一个Set类型 的集合对象中返回。
        Iterator<String> it = keys.iterator();
        while(it.hasNext()){
            String key = it.next();
            System.out.println("键:"+ key+" 值:"+ map.get(key));
        }
        
        
        
        //map集合的遍历方式二: 使用values方法进行 遍历。    缺点: values方法只能返回所有 的值,没有键。
        Collection<String>  c = map.values(); //values() 把所有的值存储到一个Collection集合中返回。
        Iterator<String> it = c.iterator();
        while(it.hasNext()){
            System.out.println("值:"+ it.next());
        }
        */
        
        //map集合的遍历方式三: entrySet方法遍历。
        Set<Map.Entry<String,String>>  entrys = map.entrySet(); 
        Iterator<Map.Entry<String,String>> it = entrys.iterator();
        while(it.hasNext()){
            Map.Entry<String,String> entry = it.next();
            System.out.println("键:"+ entry.getKey()+" 值:"+ entry.getValue());
        }
        
    }
    
    

}

 

Map

标签:void   sys   color   span   个数   tree   遍历   迭代   cti   

原文地址:http://www.cnblogs.com/xufengyuan/p/6376164.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!