什么是HashMap
依据哈希表的一个Map接口完成,存储的目标是一个键值对目标(Entry《K,V》);
HashMap弥补阐明
依据数组和链表完成,内部维护着一个数组table,该数组保存着每个链表的表头结点;查找时,先经过hash函数核算key的hash值,再依据key的hash值核算数组索引(取余法),然后依据索引找到链表表头结点,然后遍历查找该链表;
HashMap数据结构
画了个示意图,如下,左面的数组索引是依据key的hash值核算得到,不同hash值有或许发生相同的索引,即哈希抵触,此刻选用链地址法处理哈希抵触,行将一切索引共同的节点构成一个单链表;
HashMap承继的类与完成的接口
Map接口,办法的意义很简略,基本上看个办法名就知道了,后边会在HashMap源码剖析里具体阐明
AbstractMap抽象类中界说的办法
HashMap源码剖析,大部分都加了注释
简略运用示例