HashMap的底层原理

xiaojiuaigc@163.com 发布于 2024-11-05 373 次阅读


  • 底层使用hash表数据结构,即数组+(链表 | 红黑树)
  • 添加数据时,计算key的值确定元素在数组中的下标
    • key相同则替换
    • 不同则存入链表或红黑树中

获取数据通过key的hash计算数组下标获取元素

HashMap的jdk1.7和jdk1.8有什么区别

  • 8之前采用的拉链法,数组+链表
  • 8之后采用数组+链表+红黑树,链表长度大于8且数组长度大于64则会从链表转化为红黑树