Hutool Hutool
(opens new window)
🏡首页
📖指南
🎢最佳实践
💖支持
💡javaDoc (opens new window)
⏳更新记录 (opens new window)
  • 🍎gitee (opens new window)
  • 🍏github (opens new window)
(opens new window)
🏡首页
📖指南
🎢最佳实践
💖支持
💡javaDoc (opens new window)
⏳更新记录 (opens new window)
  • 🍎gitee (opens new window)
  • 🍏github (opens new window)
  • 快速入门

  • 核心(hutool-core)

    • AI(Hutool-ai)

    • 注解(annotation)

    • 数组(array)

    • JavaBean(bean)

    • 缓存(cache)

    • 类加载器(classloader)

    • 编码解码(codec)

    • 集合(collection)

    • 比较器(comparator)

    • 压缩(compress)

    • 类型转换(convert)

    • 数据(data)

    • 日期时间(date)

    • 异常(exception)

    • 函数(func)

    • IO流(io)

    • 语言特性(lang)

    • Map(map)

      • 简介
        • 📚简介
          • JDK Map 的局限
          • Hutool Map 模块的优势
          • 核心功能
          • 主要类结构
          • 🔧 主要特性
      • MapUtil
      • MapBuilder
      • MapJoiner
      • MapGetUtil
      • CaseInsensitiveMap
      • CamelCaseMap
      • BiMap
      • FixedLinkedHashMap
      • ForestMap
      • Dict
      • MultiValueMap
      • ListValueMap
      • SetValueMap
      • Table
      • SoftConcurrentMap
      • WeakConcurrentMap
      • WeakKeyConcurrentMap
      • ConcurrentLinkedHashMap
    • 数字数学(math)

    • 网络(net)

    • 对象池(pool)

    • 反射(reflect)

    • 正则(regex)

    • 服务提供(spi)

    • 聚合操作(stream)

    • 字符串文本(text)

    • 并发和线程(thread)

    • 树结构(tree)

    • 工具集合(util)

    • XML操作(xml)

  • 定时任务(hutool-cron)

  • 加密(hutool-crypto)

  • 数据库(hutool-db)

  • 扩展(hutool-extra)

  • HTTP(hutool-http)

  • 日志(hutool-log)

  • 配置文件(hutool-setting)

  • JSON(hutool-json)

  • Office办公(hutool-poi)

  • 套接字(hutool-socket)

  • GUI(hutool-swing)

  • 指南
  • 核心(hutool-core)
  • Map(map)
Hutool
2026-01-03
目录

简介

# 📚简介

Map模块(cn.hutool.v7.core.map)是 Hutool 提供的 Map 扩展模块,封装了各种增强的 Map 实现和工具类,扩展了 Java 标准库的 Map 功能,提供了更多便捷的 Map 操作和实现。

# JDK Map 的局限

Java 标准库的 Map 实现虽然强大,但在某些方面仍有局限:

  1. 缺少大小写不敏感的 Map:标准 Map 对键的大小写敏感,无法处理大小写不敏感的场景
  2. 缺少驼峰命名 Map:无法自动处理驼峰命名和下划线命名之间的转换
  3. 缺少双向 Map:无法根据值快速查找键
  4. 缺少多值 Map:标准 Map 只能存储一个值对应一个键,无法存储多个值
  5. 缺少引用 Map:无法根据引用类型自动清理过期条目
  6. 缺少固定大小 Map:无法创建固定大小的 Map,自动移除最旧条目
  7. 缺少便捷的 Map 工具类:缺少一些常用的 Map 操作工具方法

# Hutool Map 模块的优势

Hutool 的 Map 模块通过提供各种增强的 Map 实现和工具类,解决了 JDK 原生 Map 的局限:

  1. 丰富的 Map 实现:提供了多种增强的 Map 实现,如大小写不敏感 Map、驼峰命名 Map、双向 Map 等
  2. 多值 Map 支持:提供了 MultiValueMap 接口和多种实现,支持一个键对应多个值
  3. 引用 Map 支持:提供了基于软引用、弱引用的 Map 实现,自动清理过期条目
  4. 固定大小 Map:提供了固定大小的 Map 实现,自动移除最旧条目
  5. 便捷的 Map 工具类:提供了 MapUtil 工具类,包含丰富的 Map 操作方法
  6. 双向 Map:提供了 BiMap 实现,支持根据值快速查找键
  7. 支持并发:提供了并发安全的 Map 实现
  8. 支持树形结构:提供了 ForestMap 实现,支持树形结构的 Map

# 核心功能

  1. 增强的 Map 实现:

    • 大小写不敏感的 Map
    • 驼峰命名的 Map
    • 双向 Map
    • 固定大小的 Map
    • 树形结构的 Map
  2. 多值 Map:

    • 支持一个键对应多个值的 Map
    • 支持 List、Set 等多种值类型
  3. 引用 Map:

    • 基于软引用的 Map
    • 基于弱引用的 Map
    • 基于弱键的 Map
  4. 并发 Map:

    • 并发安全的 LinkedHashMap
    • 支持权重的并发 Map
  5. Map 工具类:

    • Map 的创建、合并、转换等操作
    • Map 与 Bean 之间的转换
    • Map 的遍历、过滤、排序等操作
  6. 表格结构:

    • 支持行列结构的 Table 实现
    • 支持多行多列的 TripleTable

# 主要类结构

  • 核心工具类:

    • MapUtil:Map 操作核心工具类,提供 Map 的创建、合并、转换等功能
    • MapBuilder:Map 构建器,用于便捷地创建 Map
    • MapJoiner:Map 连接工具,用于将 Map 转换为字符串
    • MapGetUtil:Map 获取工具,提供各种 Map 值获取方法
  • 增强的 Map 实现:

    • CaseInsensitiveMap:大小写不敏感的 Map
    • CamelCaseMap:驼峰命名的 Map
    • BiMap:双向 Map,支持根据值查找键
    • FixedLinkedHashMap:固定大小的 LinkedHashMap
    • ForestMap:树形结构的 Map
    • Dict:字典 Map,提供便捷的键值操作
  • 多值 Map:

    • MultiValueMap:多值 Map 接口
    • ListValueMap:值为 List 的多值 Map
    • SetValueMap:值为 Set 的多值 Map
    • Table:表格结构接口
  • 引用 Map:

    • SoftConcurrentMap:基于软引用的并发 Map
    • WeakConcurrentMap:基于弱引用的并发 Map
    • WeakKeyConcurrentMap:基于弱键的并发 Map
  • 并发 Map:

    • ConcurrentLinkedHashMap:并发安全的 LinkedHashMap

# 🔧 主要特性

  1. 增强的功能:提供了更多增强的 Map 功能,满足各种特殊场景
  2. 便捷的操作:提供了丰富的 Map 操作工具方法,简化 Map 操作
  3. 高性能:所有 Map 实现都经过性能优化,适合高并发场景
  4. 线程安全:提供了多种并发安全的 Map 实现
  5. 易于扩展:设计了良好的接口和抽象类,方便扩展

通过 Hutool 的 Map 模块,可以更方便地使用各种增强的 Map 实现,满足各种特殊场景的需求,同时简化 Map 操作,提高开发效率。

版本工具-Version
MapUtil

← 版本工具-Version MapUtil→

Theme by Vdoing | Copyright © 2025-2026 Hutool | Apache-2.0
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式