当前位置: 首页 > news >正文

Java复习Day24

Map

1.1 简介

Map接口:

  • 存储键值对对象
  • 是独立顶级接口,不属于Collection子接口

1.2 HashMap

特点:

  • 采用哈希算法存储数据
  • 键不可重复,值可重复
  • 无序存储,后插入的重复键会覆盖前值
  • 默认初始容量16,负载因子0.75

常用方法:

  • put(key,value):添加键值对
  • get(key):获取指定键的值
  • containsKey(key):检查键是否存在
  • containsValue(value):检查值是否存在
  • remove(key):移除指定键的元素
  • remove(key,value):移除指定键值对
  • size():获取元素数量
  • isEmpty():判断是否为空
  • putAll(map):合并Map
  • replace(key,value):替换指定键的值

遍历示例:

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

1.3 LinkedHashMap

  • 继承自HashMap
  • 特点:有序存储,键唯一,值不唯一

1.4 TreeMap

  • 基于树结构实现
  • 自动按key升序排列

1.5 Hashtable

与HashMap的区别:

特性HashMapHashtable
实现版本JDK1.2JDK1.0
线程安全不安全安全
null值允许不允许
初始容量1611
扩容方式capacity*2capacity*2+1
数据结构数组+链表+红黑树数组+链表
哈希计算二次哈希直接取模
http://www.xdnf.cn/news/745291.html

相关文章:

  • 202403-02-相似度计算 csp认证
  • 从0开始学vue:实现一个简单页面
  • 玩客云 OEC/OECT 笔记
  • 在Ubuntu20.04上安装ROS Noetic
  • python学习打卡day40
  • 基于空天地一体化网络的通信系统matlab性能分析
  • vBulletin未认证API方法调用漏洞(CVE-2025-48827)
  • 算法:滑动窗口
  • 将 node.js 项目作为后台进程持续运行
  • 设计模式——原型设计模式(创建型)
  • C++学习-入门到精通【11】输入/输出流的深入剖析
  • Oracle DG库控制文件IO错误导致宕机的应急处理
  • 分析XSSstrike源码
  • JS分支和循环
  • 基于开源AI大模型AI智能名片S2B2C商城小程序源码的销售环节数字化实现路径研究
  • Java 项目架构设计:模块化、分层架构的实战经验
  • 【Linux】进程地址空间揭秘(初步认识)
  • 「Java教案」数据类型、变量与常量
  • python中常用的内置属性built-in attributes
  • 某乎x-zse-96 破解(补环境版本)
  • 2025.5.29 学习日记 docker概念以及基本指令
  • AE 脚本表达式错误 Default ColorSelectionwhile (true){ break;} }
  • Java中Redis面试题集锦(含过期策略详解)
  • 【GESP真题解析】第 2 集 GESP 三级样题卷编程题 1:逛商场
  • LG P4119 [Ynoi2018] 未来日记 Solution
  • Python训练营打卡Day41(2025.5.31)
  • MySQL 读懂explain 执行计划
  • 【2025年软考中级】第二章2.2 程序设计语言的基本成分
  • 二叉搜索树——红黑树
  • WIFI中2.4G和5G的区别,和WiFi5,WiFi6和WiFi7的区别,