HashMap学习
2018-7-25
深入理解 hashcode 和 hash 算法
深入理解 HashMap put 方法(JDK 8 逐行剖析)
Questions:
- HashMap底层实现?
- HashMap依赖的hashcode和hash算法怎么实现的?
- 二进制计算的<<, >>, >>>, %, ^, &, |, ~
- 为什么使用hashcode
- String的hashCode()方法,为什么使用31?
- HashMap的hash算法的实现原理(为什么右移16位,为什么要使用^位异或)?
- HashMap为什么使用&与运算代替模运算?
- HashMap的容量为什么建议是2的幂次方?
- 自定义HashMap容量最好是多少?