HashMap底层原理实现
HashMap是基于hash表的map接口实现,是以key-value存储形式存在。由于在扩容过程中容易造成死循环,以及数据覆盖,数据丢失问题,所以不是线程安全的。其键值都可以为null。结构上,hashmap属于一种链式数组,其中数组为主体,链接结构是为了解决hash冲突而存在。在JDK1.8以后,新增红黑树结构,当链表长度大于8时,将转为红黑树,提高查询效率。而在链表长度小于6时,将重新转回链式结构。
hashmap中最常用的方法一般为get(),put().其中put方法执行过程为:

浙公网安备 33010602011771号