JAVA集合——Map接口常用方法总结以及循环遍历

一.Map接口存储的是 一组成对的键(key)和值(value)对象,提供key到value的映射,主要是通过key来进行检索,因为key的要求是无序但是要唯一,而value也是无序,但是可以重复,所以就只能通过key来进行索引;

二.Map接口的常用方法:

1.添加数据,成对添加Object put (Object key,Object value),这里的key和value的类型可以为任何类型!

   //Map接口中的key不要求有序,但是不能重复,重复就会被覆盖;
    //但是Map中的value不要求有序,但是允许重复!
    
    countey.put("CN","中国");
    countey.put("AU","澳大利亚");
    countey.put("JP","日本");
    countey.put("USA","美国");

2.移除与指定key相关的映射

    //删除某个特定的key所对应的键值对
    countey.remove("USA");

3.获得与key相关的value值,如果没有则返回null;这里需要注意的是,因为Map基本上是通过key来遍历或者查询value的值,需要把Map中的所有key 放在一起,因为key的特性,所以可以使用前面的Set 来存放一个Map中的所有key:(即 Set keySet() 方法,获取所有key的集合)

  Set keys=country.ketSet();
  
  //通过key,再结合Object get(Object key);获得与key相对应的value值;
  //基本上是采用for循环的形式来输出key和value;

三.Map的遍历有哪几种:
分析:因为Map中的对象是无序的,所以不能使用一般的for循环来进行遍历。因此可以使用增强型for或者前面提过的 Itrerator(迭代器来进行遍历);都是通过get(key)获取value;
注意:无论是增强型for还是Iterrator(迭代器);遍历的都是Map对象的key值,所以第一步都是获取所有的key;通过keyset()方法

   增强for:
   Set keys=countey.keySet();
   所有的key放到Set中:
   
    for (Object obj:keys )
    {
        String key=(String )obj;//Map中的每一个key;
        String value=(String)countey.get(key);//Map中的每一个key对应的value;
        System.out.println(key+"-----"+value);
    }
    
 迭代器:
 
   Set keyss=countey.keySet();
   //同上,获取所有的key的集合;
    Iterator iterator1= keyss.iterator();
    while (iterator1.hasNext()){
       String s= (String)iterator1.next();
        String value=countey.get(s);
        System.out.println(s+"----->"+value);
    }

还有一种就是遍历Key-value对来进行获取;主要的方法是map.enteyset()获取键值对,其类型是Map.Entry
再通过getKey()、getValue()获取对应的数组,同时要注意类型的转换;

 Set set1=countey.entrySet();
 
   //entrySet()获取Map中的键值对,因为是键值对,包含key和value,其类型为Map.Entry再常用增强for来遍历键值对集合;
   
    for (Object obj:set1
         ) {
        Map.Entry m=(Map.Entry) obj;
        String key=(String)m.getKey();
        直接通过getkey和getvalue来获取数值;
        String value=(String)m.getValue();
        System.out.println(key+"********"+value);

    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值