众所周知,HashMap可谓是用途普遍。那么咱们在用的同时,有没有思考HashMap的底层是怎样的一种数据结构呢,是如何存取呢。数组
HashMap的数据结构是一个数组和链表的结合,一个HashMap是一个数组,当HashMap里面出现相同的的key,便会使用链表进行储存。 数据结构
在1.8中,对HashMap进行了优化,其中最主要的优化即是对链表存储的优化,即当链表长达大于8时,会将链表转化为红黑树进行存储。具体能够下图,1.8中HashMap的put操做 优化