老生常谈的hashmap原理面试该怎么回答?

作者: 悟道Java分类: 计算机技术 发布时间: 2022-09-09 20:21:33 浏览:3147 次

老生常谈的hashmap原理面试该怎么回答?

BG兵哥:
数组长度大于链表大于等于8就会转红黑树,小于等于6会由红黑树转成链表

31700189069_bili:
计算出的哈希值 与 数组长度-1 进行 与& 运算 ,得到存储位置。

努力工作_早日退休:
扩容的时候并不会再去重新计算hash,这样是很影响效率的,而是用已计算的hash做&计算,得到高低位两条链表/红黑树,然后低位放原位置,高位链表放到原位置+原数组长度的位置,这样直接移动整个链表的操作效率高一些

小杰小杰遇事不愁:
hashMap 底层是线程不安全的 为什么我们在写代码的时候往往还是new 一个hashMap 呢?

【回复】回复 @悟道Java : [哦呼]学到了
【回复】因为hashmap 作为局部变量不存在线程安全问题.只有作为成员变量,多个线程同时操作这个成员,才会有安全问题.

科技猎手 毕业季 原理 程序员 编程 面试 源码 Java面试 hashmap 必剪创作

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!