workplace-blog

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Map

Map父接口

  • 存储一对数据(key—Value),无序,无下标,建不可以重复,值可以重复。

  • 方法

    方法摘要
    void clear() 从此映射中移除所有映射关系(可选操作)。
    boolean containsKey(Object key) 如果此映射包含指定键的映射关系,则返回 true
    boolean containsValue(Object value) 如果此映射将一个或多个键映射到指定值,则返回 true
    Set<Map.Entry<K,V>> entrySet() 返回此映射中包含的映射关系的 Set 视图。
    boolean equals(Object o) 比较指定的对象与此映射是否相等。
    V get(Object key) 返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null
    int hashCode() 返回此映射的哈希码值。
    boolean isEmpty() 如果此映射未包含键-值映射关系,则返回 true
    Set<K> keySet() 返回此映射中包含的键的 Set 视图。
    V put(K key, V value) 将指定的值与此映射中的指定键关联(可选操作)。
    void putAll(Map<? extends K,? extends V> m) 从指定映射中将所有映射关系复制到此映射中(可选操作)。
    V remove(Object key) 如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。
    int size() 返回此映射中的键-值映射关系数。
    Collection<V> values() 返回此映射中包含的值的 Collection 视图。
Map使用
/**
 * map的使用
 */
public class map {
    public static void main(String[] args) {
        Map<String,String> map = new HashMap<>();
        //1.添加元素(插入键相同的元素时,值会进行覆盖)
        map.put("China","中国");
        map.put("USA","美国");
        map.put("UK","英国");
        map.put("UK","日不落帝国");

        System.out.println(map);

        //2.删除
        map.remove("UK");
        System.out.println(map);

        //3遍历
        //3.1.使用keySet
        Set<String> ks = map.keySet();
        for (String s:ks
             ) {
            System.out.println(s + ":" + map.get(s));
        }

        //3.2.使用entrySet,返回值类型为Map.Entry(接口)类。
        Set<Map.Entry<String,String>> ens = map.entrySet();
        for (Map.Entry<String,String> mens : ens
             ) {
            System.out.println(mens.getKey() + "----->" + mens.getValue());
        }

        //4.判断
        System.out.println(map.containsKey("USA"));
        System.out.println(map.containsValue("泰国"));
    }
}

//输出结果:
{USA=美国, China=中国, UK=日不落帝国}
{USA=美国, China=中国}
USA:美国
China:中国
USA----->美国
China----->中国
true
false
  • 补充:map.keySet()方法和map.entrySet()方法:

posted on 2022-08-26 19:29  多巴胺LLL  阅读(45)  评论(0)    收藏  举报