Java中HashMap的使用
Java 中 HashMap 的使用
- 注意事项
- curd
- create
- put(key, value)
- update
- replace(key, newValue)
- retrieve
- get(key)
- containsKey(key)
- containsValue(value)
- keySet(): 获取 key 的集合
- delete
- remove(key): 删除某个键值对
- clear(): 删除所有键值对
- create
- 遍历
- foreach 结构
- HashMap 的底层原理
- 数据少时,数组+链表,数据多时,数组+红黑树
- 容量永远为2的次方,初始容量为16
- 加载因子:对应扩容的阈值, capacity * Load_Factor
- 添加元素
- hash的计算方式:异或
(h = key.hashCode()) ^ (h >>> 16)
- 插入:直接放入、扔到树里、连表尾部
- hash的计算方式:异或
import java.util.HashMap; public class test { public static void main(String[] args) { HashMap<Integer, String> idToName = new HashMap<>(); // 新增数据 idToName.put(1, "John"); idToName.put(2, "Mary"); idToName.put(3, "Mike"); // 遍历输出 printIntToStrMap(idToName); // 更新 idToName.replace(1, "Tom"); // 查找数据 System.out.println(idToName.get(1)); // 删除数据 idToName.remove(1); printIntToStrMap(idToName); } public static void printIntToStrMap(HashMap<Integer, String> idToName) { for (int id : idToName.keySet()) { System.out.println(id + ": " + idToName.get(id)); } } }
参考资料
如果您有任何关于文章的建议,欢迎评论或在 GitHub 提 PR
作者:dutrmp19
本文为作者原创,转载请在 文章开头 注明出处:https://www.cnblogs.com/dutrmp19/p/15933968.html
遵循 CC 4.0 BY-SA 版权协议
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本