当前位置:首页 > Java

如何创建映射java

2026-03-24 17:16:34Java

创建映射(Map)在 Java 中的方法

在 Java 中,映射(Map)是一种键值对(Key-Value)数据结构,常用的实现类包括 HashMapTreeMapLinkedHashMap。以下是几种常见的创建和使用映射的方法。

使用 HashMap 创建映射

HashMap 是最常用的映射实现,基于哈希表,提供快速的插入和查找操作。

import java.util.HashMap;
import java.util.Map;

Map<String, Integer> map = new HashMap<>();
map.put("apple", 10);
map.put("banana", 20);
map.put("orange", 30);

System.out.println(map.get("apple")); // 输出 10

使用 TreeMap 创建映射

TreeMap 基于红黑树实现,键值对按自然顺序或自定义比较器排序。

import java.util.TreeMap;
import java.util.Map;

Map<String, Integer> map = new TreeMap<>();
map.put("apple", 10);
map.put("banana", 20);
map.put("orange", 30);

System.out.println(map); // 输出 {apple=10, banana=20, orange=30}(按键排序)

使用 LinkedHashMap 创建映射

LinkedHashMap 保留插入顺序或访问顺序,适合需要保持顺序的场景。

import java.util.LinkedHashMap;
import java.util.Map;

Map<String, Integer> map = new LinkedHashMap<>();
map.put("apple", 10);
map.put("banana", 20);
map.put("orange", 30);

System.out.println(map); // 输出 {apple=10, banana=20, orange=30}(按插入顺序)

使用 Java 9+ 的工厂方法创建不可变映射

从 Java 9 开始,可以使用 Map.of()Map.ofEntries() 创建不可变映射。

Map<String, Integer> immutableMap = Map.of(
    "apple", 10,
    "banana", 20,
    "orange", 30
);

System.out.println(immutableMap.get("banana")); // 输出 20

初始化时直接填充数据

可以使用双括号初始化(匿名内部类方式),但不推荐用于生产环境,因为可能引发内存泄漏。

Map<String, Integer> map = new HashMap<String, Integer>() {{
    put("apple", 10);
    put("banana", 20);
    put("orange", 30);
}};

System.out.println(map.get("orange")); // 输出 30

遍历映射

可以通过 entrySet()keySet()values() 遍历映射。

如何创建映射java

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

map.keySet().forEach(key -> System.out.println(key));
map.values().forEach(value -> System.out.println(value));

注意事项

  • HashMap 的键和值允许为 null,而 TreeMap 不允许键为 null
  • 在多线程环境下,可以使用 ConcurrentHashMapCollections.synchronizedMap() 包装普通映射。
  • 不可变映射(如 Map.of() 创建的)在尝试修改时会抛出 UnsupportedOperationException

根据需求选择合适的映射实现类,并注意线程安全和性能问题。

标签: java
分享给朋友:

相关文章

java如何打开

java如何打开

安装Java开发环境 下载并安装Java Development Kit (JDK),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME和PATH变量正…

如何配置java

如何配置java

安装Java开发工具包(JDK) 访问Oracle官方网站或OpenJDK项目页面下载适合操作系统的JDK安装包。选择与系统架构匹配的版本(如Windows x64、macOS ARM等)。运行安装程…

java如何读取文件

java如何读取文件

读取文件的常用方法 Java提供了多种读取文件的方式,适用于不同场景和需求。以下是几种常见的方法: 使用FileInputStream和BufferedInputStream读取二进制文件…

java如何学习

java如何学习

学习Java的有效方法 理解基础概念 Java是一门面向对象的编程语言,掌握基础概念如变量、数据类型、运算符、控制语句(if-else、循环)是必要的。面向对象的核心概念包括类、对象、继承、多态和封装…

如何配置java环境

如何配置java环境

下载JDK安装包 访问Oracle官网或OpenJDK官网,选择适合操作系统的JDK版本(如Windows、macOS或Linux)。下载完成后,运行安装程序并按照提示完成安装。 设置环境变量 右键…

java如何上传文件

java如何上传文件

使用HttpURLConnection上传文件 在Java中,可以通过HttpURLConnection实现文件上传功能。需要设置请求头为multipart/form-data,并构建包含文件数据的请…