栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA高级特性——Map接口及其实现类HashMap

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA高级特性——Map接口及其实现类HashMap

Map概述

Map接口存储一组成对的键值对象,提供key到value的映射,通过key来检索。

Map接口中的key无序,不允许重复;value无序,但允许重复

public class CountriesInfo {
    public static void main(String[] args) {
        //创建集合对象,并将国家信息键值对放入集合
        Map countries =new HashMap();
        countries.put("China","中国");
        countries.put("USA","美国");
        countries.put("Japan","日本");
        countries.put("France","法国");
        //获取集合中存储元素个数
        System.out.println(countries.size());
        //获取集合中特风的key对应的value——返回的是Object类型,
        // 需要强制类型转换
        String country=(String)countries.get("China");
        System.out.println(country);



    }
}
Map中常用方法

话不多说,直接上代码:

public class CountriesInfo {
    public static void main(String[] args) {
        //创建集合对象,并将国家信息键值对放入集合
        Map countries =new HashMap();
        countries.put("China","中国");
        countries.put("USA","美国");
        countries.put("Japan","日本");
        countries.put("France","法国");
        //获取集合中存储元素个数
        System.out.println(countries.size());
        //获取集合中特风的key对应的value——返回的是Object类型,
        // 需要强制类型转换
        String country=(String)countries.get("China");
        System.out.println(country);

        //获取集合中特定的key对应的value,如果找不到则返回null
        String country2=(String)countries.get("Mada");
        System.out.println(country2);

        //判断集合中是否存在某个国家——boolean值
        System.out.println("是否存在键为china的国家:"+countries.containsKey("China"));

        //删除某个特定key对应的键值对
        System.out.println("是否存在键为USA的国家:"+countries.containsKey("USA"));
        countries.remove("USA");
        System.out.println("是否存在键为USA的国家:"+countries.containsKey("USA"));
        System.out.println(countries.size());
        //获取键的集合,值的集合,键值对的集合
        System.out.println(countries.keySet());
        System.out.println(countries.values());
        System.out.println(countries);
    }
}
遍历Map集合

方式一:遍历key,通过key——>value

方法1.通过迭代器Iterator实现遍历

方法2.通过增强for循环

方式二:遍历key——value对

一定要注意进行强制类型转换!!!

package cn.kgc.review1113;

import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;


public class CountriesInfo {
    public static void main(String[] args) {
        //创建集合对象,并将国家信息键值对放入集合
        Map countries =new HashMap();
        countries.put("China","中国");
        countries.put("USA","美国");
        countries.put("Japan","日本");
        countries.put("France","法国");
        //获取集合中存储元素个数
        System.out.println(countries.size());
        //获取集合中特风的key对应的value——返回的是Object类型,
        // 需要强制类型转换
        String country=(String)countries.get("China");
        System.out.println(country);

        //获取集合中特定的key对应的value,如果找不到则返回null
        String country2=(String)countries.get("Mada");
        System.out.println(country2);

        //判断集合中是否存在某个国家——boolean值
        System.out.println("是否存在键为china的国家:"+countries.containsKey("China"));

        //删除某个特定key对应的键值对
        System.out.println("是否存在键为USA的国家:"+countries.containsKey("USA"));
        countries.remove("USA");
        System.out.println("是否存在键为USA的国家:"+countries.containsKey("USA"));
        System.out.println(countries.size());
        //获取键的集合,值的集合,键值对的集合
        System.out.println(countries.keySet());
        System.out.println(countries.values());
        System.out.println(countries);
       



  //遍历Map,思路一:先遍历key,通过key——>value
        Set keys=countries.keySet();//获取Map中所有key,因为key无序且唯一,所以用Set类
             //方法一.通过增强for循环
        for(Object obj:keys){
            String key=(String)obj;//获取Map中的每一个key,强制类型转换
            String value=(String)countries.get(key);//根据Map中的每个key去获取对应的value
            System.out.println(key+"--"+value);
        }
             //方法二:迭代器Iterator遍历key的集合(Set)
        Iterator itor=keys.iterator();
        while(itor.hasNext()){
            String key=(String)itor.next();//获取Map中的每一个key,强制转换
            String value=(String)countries.get(key);//根据Map中的每个key去获取对应的value
            System.out.println(key+"--"+value);
        }

        //方式二:获取Map中的所有键值对,然后在键值对中分别获取key和value
        Set set=countries.entrySet();//新方法entrySet():获取Map中所有的键值对
        //遍历键值对的集合,把每个键值对拿出来,每个键值对都是Map.Entry()类型
        for(Object obj:set){
            Map.Entry me=(Map.Entry)obj;//强制转换为键值对类型
             String key=(String )me.getKey();//获取出来键值对中的键
            String value=(String )me.getValue();获取出来键值对中的值
            System.out.println(key+"--"+value);
        }
        
    }
}
 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/489600.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号