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>的键值类型为泛型,可以是任何类型

浙公网安备 33010602011771号