📜  hashmap (1)

📅  最后修改于: 2023-12-03 14:41:41.610000             🧑  作者: Mango

HashMap

HashMap 是 Java 中常用的数据结构,用于存储 key-value 对。它是基于哈希表实现的,可以实现快速的插入、查找、删除操作。在 Java 中,HashMap 是一个非常重要的类,在开发中广泛应用。

数据结构

由于 HashMap 底层是基于哈希表实现的,因此先了解哈希表的概念。

哈希表是一种用于存储键值对的数据结构,它通过哈希函数将键映射到数组中的一个位置,并使用链表或者红黑树等数据结构来解决哈希冲突。

Java 中的 HashMap 将键值对存储在一个 Entry 数组中,每个 Entry 包含一个 key 和一个 value,另外还包含一个指向下一个 Entry 的指针,用于处理哈希冲突。

由于哈希表的查询复杂度为 O(1),因此 HashMap 在一些场景下可以大大提升代码的效率。

常规操作
添加元素

添加元素到 HashMap 可以使用 put(key, value) 方法,例如:

Map<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
获取元素

从 HashMap 中获取元素可以使用 get(key) 方法,例如:

map.get("apple"); // 1
删除元素

从 HashMap 中删除元素可以使用 remove(key) 方法,例如:

map.remove("apple");
遍历元素

遍历 HashMap 可以使用不同的方法,例如使用 keySet() 获取键的集合,然后使用 for 循环:

for (String key : map.keySet()) {
    System.out.println(key + " : " + map.get(key));
}

还可以使用 entrySet() 获取键值对的集合,然后使用 for 循环:

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

HashMap 是 Java 中非常常用的类,在实际开发中有着广泛的应用。它是基于哈希表实现的,能够快速进行插入、查找、删除操作。熟练掌握 HashMap 的使用,对于提高 Java 的开发效率有着非常重要的作用。