java8源码-Interview:对我的采访

时间:2024-06-24 14:25:57
【文件属性】:

文件名称:java8源码-Interview:对我的采访

文件大小:3.68MB

文件格式:ZIP

更新时间:2024-06-24 14:25:57

系统开源

java8 源码 参考 1.基础 1.集合框架 1.HashMap ​ HashMap 是由链表和数组组合而成的基本数据结构 ,k-v 存储,允许null key 和null value ​ ​ 初始容量 1 << 4 16 ​ 扩容因子 0.75f 即 容量 * 扩容因子 为可存储做多数据,超过会扩容 成原来的 2 倍 增加时考虑 ​ 链表长度 > 8 由 链表转换成 红黑树 增加的时候 考虑(并且 容量 > 64 ) ​ 链表长度 < 6 由 红黑树换成 链表转 split的时候 考虑 注意: 初始化HashMap,但是不使用put(resize),并不会真正初始化HashMap hash方法 return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16) 将高位数据移位到低位进行异或运算,因为这些数字差异主要在高位上,高位和低位取异或保留高位特征值,使其分布更随机 称其为扰动函数 tableSizeFor n |= n >>> 4 即取最高位是1之后都是1的那个数,然后+1 变成 10000...,2的次幂 resize


【文件预览】:
Interview-master
----.gitattributes(66B)
----assets()
--------对象创建.jpg(26KB)
----readme.assets()
--------image-20210507101346462.png(76KB)
--------image-20210506145740796.png(431KB)
--------image-20210430134224499.png(103KB)
--------image-20210428103846411.png(182KB)
--------image-20210430134123644.png(100KB)
--------image-20210430135623696.png(97KB)
--------image-20210428110543704.png(54KB)
--------image-20210407140840145.png(308KB)
--------image-20210430135618526.png(97KB)
--------image-20210428105940526.png(59KB)
--------image-20210506145801360.png(147KB)
--------image-20210507102722040.png(201KB)
--------image-20210507102046504.png(266KB)
--------image-20201225180056942.png(20KB)
--------image-20210506104033855.png(130KB)
--------image-20210507140250898.png(124KB)
--------image-20210430135601943.png(109KB)
--------image-20210428103916118.png(159KB)
--------image-20210507102042811.png(266KB)
--------image-20210428155347352.png(158KB)
--------image-20210507113813417.png(61KB)
--------image-20210402093012432.png(121KB)
--------image-20210420151304429.png(73KB)
--------image-20210401165349362.png(288KB)
--------image-20210407112347132.png(298KB)
----readme.md(83KB)

网友评论