HashMap 是 Java 中非常常用的一种数据结构,它基于散列表实现,提供了非常高效的数据存储和查询性能。下面我们来详细了解一下 HashMap 的基本概念和使用方法。

HashMap 基本概念

HashMap 是一个可以存储键值对(key-value)的集合类。每个键值对是一个键和一个值,键不能重复,而值可以重复。HashMap 的底层实现是通过散列表来存储数据的。

HashMap 的特点:

  • 快速访问:HashMap 提供了常数时间复杂度的插入、删除和查询操作。
  • 键值对:可以存储任意类型的键值对。
  • 非线程安全:如果多个线程同时访问 HashMap,需要考虑线程安全的问题。

HashMap 使用方法

以下是一个简单的例子,展示了如何使用 HashMap:

import java.util.HashMap;

public class Main {
    public static void main(String[] args) {
        // 创建 HashMap 实例
        HashMap<String, String> map = new HashMap<>();

        // 添加键值对
        map.put("key1", "value1");
        map.put("key2", "value2");
        map.put("key3", "value3");

        // 查询键值
        System.out.println(map.get("key1")); // 输出 value1

        // 删除键值对
        map.remove("key2");

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

在上面的例子中,我们首先创建了一个 HashMap 实例,并添加了三个键值对。然后,我们查询了键为 "key1" 的值,并删除了键为 "key2" 的键值对。最后,我们遍历了 HashMap 并打印了每个键值对。

扩展阅读

如果你对 HashMap 的原理和实现感兴趣,可以阅读 Java HashMap 源码分析

HashMap 结构图