Android开发 - Map 键值对链表的使用解析

创建和初始化 Map

  • HashMap:常用的实现类,基于哈希表

    Map<String, Integer> map = new HashMap<>();
    
  • LinkedHashMap:保持插入顺序的实现类

    Map<String, Integer> map = new LinkedHashMap<>();
    
  • TreeMap:基于红黑树,按键的自然顺序或提供的比较器排序

    Map<String, Integer> map = new TreeMap<>();
    

添加键值对

  • map.put(K key, V value):添加或更新键值对

    map.put("Apple", 1);
    map.put("Banana", 2);
    

获取值

  • map.get(K key):根据获取

    Integer value = map.get("Apple"); // value = 1
    
  • map.containsKey(K key)检查是否包含指定

    boolean hasKey = map.containsKey("Banana"); // true
    
  • map.containsValue(V value)检查是否包含指定

    boolean hasValue = map.containsValue(1); // true
    

删除键值对

  • map.remove(K key)删除指定键的键值对

    map.remove("Apple");
    

遍历 Map

  • map.entrySet()遍历键值对集合

    for (Map.Entry<String, Integer> entry : map.entrySet()) {
        String key = entry.getKey();
        Integer value = entry.getValue();
        System.out.println(key + ": " + value);
    }
    
  • map.keySet()遍历键集合

    for (String key : map.keySet()) {
        Integer value = map.get(key);
        System.out.println(key + ": " + value);
    }
    
  • map.values(): 遍历值集合

    for (Integer value : map.values()) {
        System.out.println(value);
    }
    

清空 Map

  • map.clear()清空所有键值对

    map.clear();
    

检查 Map 是否为空

  • map.isEmpty()检查是否为空

    boolean empty = map.isEmpty(); // 如果为空,则为true
    

补充

  • Map<String, Integer>键值类型泛型,可以是任何类型
posted @ 2024-09-09 10:27  阿俊学JAVA  阅读(3)  评论(0编辑  收藏  举报