Map接口和其实现类HashMap

概述

双列集合Map,每个元素都包含一个键对象Key和值对象Value,键和值对象之间存在对应关系,称为映射。Map集合中访问元素,只要指定了Key,就能找到对应的Value。

Map接口常用方法

方法 描述
V put(Object key,Objec value) 将指定的值与此映射中的指定键关联并添加到集合中。如果包含先前的映射,则将旧值替换为新值
V get(Object key) 返回指定键所映射的值,如果此映射不包含该键的映射关系,返回null
boolean containsKey(Object key) 如果此映射包含指定键的映射关系,返回true
boolean containsValue(Object value) 如果映射中包含有一个或多个键映射到指定值,则返回true
Set keySet() 返回此映射中包含的键Set视图
Collection values() 返回此映射中包含的Collection视图
V remove(Object key) 如果删除成功,返回先前的值,如果失败,返回null
boolean remove(Object key,Object value) 删除成功返回true,否则返回false
V replace(K key,V value) 仅当指定键映射到某个值时,新值替换,返回旧值

简而言之,

put(Object key,Objec value)和get(Object key)用于向Map中存入和取出元素;

containsKey(Object key)和containsValue(Object value)方法分别用于判断Map中是否包含某个特定的键或值。

keySet()和values()方法分别用于获取Map中所有的键和值。


Map的实现类

HashMap

用于存储键值映射关系,必须保证不出现重复的键,重复键不会存入。

下面举2个不同的迭代方式:
1.foreach迭代HashMap

        HashMap map = new HashMap();
        map.put(1, "Jack");
        map.put(2,"Rose");
        map.put(3,"Tim");


        //foreach遍历
        Set set = map.keySet();
        for (Object i :
                set) {
            System.out.println(i+"->"+map.get(i));
        }

2.Iterator迭代HashMap

        HashMap map = new HashMap();
        map.put(1, "Jack");
        map.put(2,"Rose");
        map.put(3,"Tim");

        //使用Iterator对象进行遍历
        Set set2 = map.keySet();
        Iterator it = set2.iterator();
        while (it.hasNext()){
            Object key = it.next();
            Object value = map.get(key);
            System.out.println(key + "->" + value);
        }

运行结果如下:

1->Jack
2->Rose
3->Tim
posted on 2021-10-18 11:06  技术小伙伴  阅读(117)  评论(0)    收藏  举报