[Java]双列集合

1. 双列集合特点

2. Map

2.1 常用方法




2.2 遍历方式

键找值
键值对
Lambda表达式


底层:


forEach 其实就是利用第二种方法进行遍历,依次得到每一个键和值,再调用 accept 方法。

3. HashMap


3.1 底层原理


HashMap 保证键的唯一性,同一位置新插入 entry 的键一样,value 不一样,把旧的 value 覆盖掉。键不一样,JDK8以后,则把新的 entry 挂在旧的下面,达到一定条件会变成红黑树。

3.2 总结

3.3 源码

4. LinkedHashMap


键一样时,值也会被覆盖,但是能保证存取顺序一致。

5. TreeMap

该图缺失的字 "两面性" :

相关推荐
IT_Octopus2 小时前
Spring Boot 线程池关闭:destroyMethod 的作用与最佳实践
java·spring boot·后端
亦暖筑序2 小时前
AgentScope-Java 入门:完善 Vue 前端、发布 GitHub,并规划下一步
java·前端·vue.js
wddptwd282 小时前
android studio 报错怎么处理 java.lang.NullPointerException
android·java·android studio
霸道流氓气质2 小时前
分布式系统中接口时序不确定性处理
java·开发语言·分布式
深入云栈2 小时前
Netty 4.2.x 源码深度解析 (四):HashedWheelTimer —— 时间轮定时调度算法
java
带刺的坐椅3 小时前
别再把 Coding Agent 当智能补全了:SolonCode 想做的是数字员工
java·solon·codex·claudecode·opencode·soloncode
大模型码小白3 小时前
在 Windows 下 Codex 安装、配置与使用详细指南
java·人工智能·windows
Gauss松鼠会3 小时前
【GaussDB】GaussDB锁阻塞源头查询
java·开发语言·前端·数据库·算法·gaussdb·经验总结
mingo_敏3 小时前
DeepAgents : 后端(Backends)
java·开发语言
霸道流氓气质3 小时前
SpringBoot中事务内同步处理 + 事务后异步调用外部系统的通用模式示例
java·spring boot·后端