
简介
该用户还未填写简介
擅长的技术栈
未填写擅长的技术栈
可提供的服务
暂无可提供的服务
为什么在 Jdk 8 中 HashMap 要转成红黑树?
Java常见面试题
ConcurrentHashMap 为什么在 JDK 1.8 中废弃分段锁?
更加通俗易懂的java面试题
HashMap 在 get 和 put 时,底层流程是怎样的?
永远是 2 的几次方(比如 16, 32, 64),这个位运算公式算出来的结果就和取模一模一样,属于极限压榨性能的骚操作。算 hash、定桶位、空桶插、有桶找、找到换、找不到插尾、检查树化和扩容。算 hash、定桶位、空桶返 null、有桶找、链表挨个问、红黑树高效找。比较复杂(比如比对长字符串),比较慢,所以放在最后用来当做“终极确认”。比较沉重,找不到要塞进去,拿不下还要换大房子(扩容)。,能
HashMap 的 remove 方法是如何实现的?
你给它一个 Key,它先噼里啪啦一顿计算,算出这个 Key 该存放在数组的哪个格子里(桶位)。如果这个格子本来就是空的,说明根本没这个人,直接返回。如果刚才删的是红黑树里的节点,删完之后 HashMap 会数一数这棵树上还剩几个节点。成功删除后,它会把刚才删掉的那个数据的值(Value)返回给你,让你知道你到底删了个啥。,它就会觉得“杀鸡焉用牛刀,树太小了维护起来太累”,就会调用底层方法把这棵树。
HashMap 在多线程的场景中会出现什么问题?
java面试题
Spring AI Alibaba 中的 Agent 到底是个啥?(通俗易懂汇总版)
SpringAI AliBaba 框架笔记
Spring AI Alibaba 中的 Model(模型)到底是个啥?(通俗易懂汇总版)
SpringAI Alibaba笔记
Spring AI Alibaba 中的 Memory 短期记忆(通俗易懂汇总版)
SpringAI alibaba笔记







