java集合类之map 头歌
时间: 2025-02-20 14:14:02 浏览: 52
### Java 中 `Map` 集合类概述
在 Java 编程语言中,`Map` 接口代表了一种键值对映射的数据结构。每个键最多只能映射到一个值,并且不允许有重复的键[^1]。
常见的实现类包括:
- **HashMap**: 提供基于哈希表的 Map 实现;不保证顺序。
- **LinkedHashMap**: 继承自 HashMap, 通过链表维护插入顺序。
- **TreeMap**: 基于红黑树实现,按键自然排序或指定比较器排序。
- **Hashtable**: 类似于 HashMap, 但是线程安全,在大多数情况下性能较低。
#### 创建并初始化 Map 对象
```java
// 使用 HashMap 初始化 map
Map<String, Integer> hashMap = new HashMap<>();
hashMap.put("one", 1);
hashMap.put("two", 2);
// LinkedHashMap 保持插入顺序
Map<String, String> linkedHashMap = new LinkedHashMap<>();
linkedHashMap.put("first", "valueOne");
linkedHashMap.put("second", "valueTwo");
// TreeMap 自动按 key 的自然序排列
Map<Integer, String> treeMap = new TreeMap<>();
treeMap.put(3, "three");
treeMap.put(1, "one");
```
#### 访问和操作 Map 数据
可以使用多种方法来访问存储在 `Map` 中的数据项以及执行其他常用的操作:
- 删除条目:`remove(Object key)`
```java
System.out.println(hashMap.get("one")); // 输出:1
if (hashMap.containsKey("two")) {
System.out.println("存在键 two");
}
hashMap.remove("one");
```
#### 迭代遍历 Map
迭代整个 `Map` 可以采用不同的方式,这里展示两种常见的方式——一种是利用 entrySet() 方法获取 Entry 集合进行迭代,另一种则是直接遍历 keys 或 values.
```java
for (Map.Entry<String, Integer> entry : hashMap.entrySet()) {
System.out.println(entry.getKey() + "=" + entry.getValue());
}
for (String key : hashMap.keySet()) {
System.out.print(key + ", ");
}
System.out.println();
for (Integer value : hashMap.values()) {
System.out.print(value + ", ");
}
```
阅读全文
相关推荐















