java hash map
时间: 2025-06-28 18:02:44 浏览: 10
### Java 中 HashMap 的使用方法
#### 创建和初始化 HashMap
为了创建并初始化 `HashMap` 对象,可以采用如下方式:
```java
import java.util.HashMap;
public class Example {
public static void main(String[] args) {
// 初始化一个空的 HashMap
HashMap<String, String> hashMap = new HashMap<>();
// 向 HashMap 添加键值对
hashMap.put("key1", "value1");
hashMap.put("key2", "value2");
// 输出整个 HashMap
System.out.println(hashMap);
}
}
```
当向同一个 key 插入新 value 时,旧 value 将被替换。例如,在给定的例子中,“key1”的初始值为“hhh233”,但在后续操作中更新为“ssads”。最终打印的结果会显示最新的映射关系[^1]。
#### putAll 方法的作用
`putAll()` 方法用于将指定 map 中的所有映射复制到当前调用此方法的对象里。如果两个 Map 存在同一 Key,则后者覆盖前者对应的 Value 值。下面展示了如何利用该函数来填充一个新的哈希表实例:
```java
// 定义第一个 HashMap 并填充值
HashMap<String, String> sourceMap = new HashMap<>();
sourceMap.put("keyA", "valA");
sourceMap.put("keyB", "valB");
// 定义第二个 HashMap 准备接收来自 sourceMap 的全部条目
HashMap<String, String> destinationMap = new HashMap<>();
// 调用 putAll() 复制所有 entry 到目标 Map
destinationMap.putAll(sourceMap);
System.out.println(destinationMap); // 打印结果应包含源 Map 的所有项
```
#### 面向接口编程的优势
建议在声明变量时尽可能多地依赖于抽象类型而非具体实现类。这样做不仅提高了灵活性还增强了可维护性和扩展性。比如定义成 `Map<K,V>` 类型而不是具体的 `HashMap<K,V>` 可以让开发者更容易切换底层容器而无需修改大量现有代码[^3]。
#### 时间复杂度优势
由于内部采用了数组加链表/红黑树的数据结构设计模式,使得查找、插入以及删除操作都能达到常数级别时间效率 O(1),这正是它成为最常用的集合框架之一的原因所在[^2]。
阅读全文
相关推荐

















