JAVA基础知识——Map

JAVA基础知识——Map

  • 一、Map概述:
    • 1.作用:实现对象映射到其他对象上;
    • 2.形式:Map mapName = new HashMap();
    • 3.特点:Map是Java.util中的集合类,Map本身是一个接口,不能够通过new实现对象的初始化,常用的实现类(继承Map接口的类)是HashMap、LinkedHashMap、HashTabel、TreeMap等;
    • 4.注意:
      • (1) Map不能作为基本类型的容器(eg:Key类型不能为char,Value类型不能为int)
      • (2)Map中不能包含相同的key值,每个key至多映射到一个value
      • (3)对于key/value能否为null取决于Map具体的实现类
  • 二、Map常用方法
    • 1.删除操作:
      • void clear()(可选操作):从Map中移除所有映射关系
      • V remove(Object key)(可选操作):移除Key映射的Value的值(前提是Map中能够匹配到key),并返回Value(Key、Value的类型取决于定义的Map实现类),如果无法匹配到对应的Key,则返回null
      • default boolean remove(Object Key,Object Value):删除指定条目,当Map中匹配到对应的Key,则删除后返回True,未匹配成功则返回False
    • 2.构建Map:
      • V put(K key, V value)(可选操作):将指定的值与此映射中的指定键关联(可实现插入键值对/更新值的操作)
      • void putAll(Map m)(可选操作):从指定映射中将所有映射关系复制到此映射中
    • 3.获取Map大小:
      • int size():返回Map中映射关系的数目
    • 4.判空:
      • boolean isEmpty():判断Map中映射是否包含键-值映射关系,没有则返回true,否则返回false
    • 5.判断值或者键是否在Map中:
      • boolean containsKey(Object key):Map中包含key对应的条目,返回true,否则返回false
      • boolean containsValue(Object value):Map中包含value对应的条目,返回true,否则返回false
    • 6.获取Map中的值/键:
      • Object get(Object key):返回指定键所映射的值,如果对应的映射关系不存在,则返回null
    • 7.获取entrySet:
      • Set entrySet():返回此映射中包含的映射关系的Set视图(可通过entrySet得遍历Map)
  • 三、Map的遍历方法
    • 默认定义Map:
      Map map = new HashMap();
      (对于Map中的键值对依据具体情况而定,通过put方法可以实现)
    • 1.二次取值: for(String key : map.keySet()){ }(获取值:map.get(key)
    • 2.迭代器:
      • 定义:Iterator> it = map.entrySet().iterator();
      • 获取键/值:while (it.hasNext()) { Map.Entry entry = it.next()}(获取键:entry.getKey(),获取值:entry.getValue()
    • 3.entrySet(适合大容量):for (Map.Entry entry : map.entrySet()) { }(获取键:entry.getKey(),获取值:entry.getValue()
    • 4.Map.values:for (String v : map.values()) { }(无法获取键,只能获取值)

你可能感兴趣的:(java)