Map简介

Posted juzhuxiaozhu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Map简介相关的知识,希望对你有一定的参考价值。

Map(映射)

一. Map<K,V>

  1. Map是映射的顶级接口,实现类主要有:HashMap(重点) HashTable(面试)。

  2. 特点:

    1. 将键映射到值的对象(键值对)
    2. 键唯一,值不唯一。即一个键只能映射一个值,一个值可以对应多个键。
    3. 键值对在map中以entry结构储存。
    4. 无法保证元素的存入顺序
  3. 主要方法:

    1. V put(K key,V value)

      将指定的值与此映射中的指定键关联(可选操作)。

      如果当前map中没有要放入的这个元素的键,可以直接添加到map中,返回NUll;

      如果当前map中对于要放入的元素的键已经存在了,则用新的值将原来该键对应的值覆盖掉,返回旧值;

    2. Void clear()

      从此映射中移除所有映射关系。

    3. Boolean containsKey(Object Key)

      如果此映射包含指定键的映射关系,则返回 true

    ?

    1. boolean containsValue(Object value)

      如果此映射将一个或多个键映射到指定值,则返回 true

    2. V get(Object key)

      返回指定键所映射的值;

      如果此映射不包含该键的映射关系,则返回 null。

    3. boolean isEmpty()

      如果此映射未包含键-值映射关系,则返回 true。

    4. void putAll(Map<? extends K,? extends V> m)

      从指定映射中将所有映射关系复制到此映射中(可选操作)。

    5. V remove(Object key)

      如果存在一个键的映射关系,则将其从此映射中移除。

    6. Set keySet()

      返回此映射中包含的键的 Set 视图。

    7. Set<Map.Entry<K,V>> entrySet()

      返回此映射中包含的映射关系的 Set 视图

  4. 遍历

    1. keySet获取到所有的key,遍历key,根据key去查找当前key对应的值

      Set<Integer> keys = map.keySet();
      for (int i:keys) {
          System.out.println(i+":"+map.get(i));
      }
      
    2. 使用entrySet方法来获取Entry的set集合,遍历set集合。调用Entry中的方法获取当前Entry的key和value

      Set<Map.Entry<Integer, String>> entries = map.entrySet();
      for (Map.Entry<Integer, String> entry:entries) {
          System.out.println(entry.getKey()+":"+entry.getValue());
      }
      

以上是关于Map简介的主要内容,如果未能解决你的问题,请参考以下文章

Android 逆向类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )(代码片段

android google map supportmap片段无法在片段中初始化

比较有用的php代码片段

JavaScript 代码片段

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

代码片段 - Golang 实现集合操作