((h << 1) - (h << 8)) & (length - 1)
h << 1: 左移,末位补0,偶数
h << 8: 同理,偶数
偶数减偶数,还是偶数,即二进制末位为0
0与任何数(0/1)相与还是0
即最后的结果,二进制末位是0,说明是偶数
Java1.8-IdentityHashMap源码解析一. 概述 IdentityHashMap利用Hash表来实现Map接口,比较键(和值)时使用引用相等性代替对象相等性,也就是说使用 == 而不是使用 equals。 比...
((h << 1) - (h << 8)) & (length - 1)
h << 1: 左移,末位补0,偶数
h << 8: 同理,偶数
偶数减偶数,还是偶数,即二进制末位为0
0与任何数(0/1)相与还是0
即最后的结果,二进制末位是0,说明是偶数
Java1.8-IdentityHashMap源码解析一. 概述 IdentityHashMap利用Hash表来实现Map接口,比较键(和值)时使用引用相等性代替对象相等性,也就是说使用 == 而不是使用 equals。 比...
相关文章 IO、NIO、AIO 内部原理分析NIO 之 Selector实现原理NIO 之 Channel实现原理 前言 Java NIO 主要由下面3部分组成: Buffe...