HashMap学习记录

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容量最好是多少?

你可能感兴趣的:(笔记)