标签:初始 info treenode width height 位置 方法 com put
为了更形象的理解Hashmap,直接上图
底层结构用哈希表(其实是数组+链表)
普及
数组:查询快(下标),增删慢
链表:增删快,查询慢(首位相连,找到前一个的末尾,才能找到)
hashMap 结构(jdk1.8)
1、对key求hash值
2、初始化数组(默认长度16)
3、put元素
1.1 没有元素 放入该位置
1.2 有元素,以链表形式放到链表的最后(kdk1.7及以前放在最前面)
==》当元素是TreeNode类型(即长度超过8,转换成树结构)
4、扩容 当数组不够用,需要进行扩容:默认是(数组大小*扩容因子(默认值0.75)),即长度为16时,当长度超过12,就开始扩容,方法resize()
未完待续。。。。。。。。。。。。。。。。。。。。。。 HashMap线程是否安全
标签:初始 info treenode width height 位置 方法 com put
原文地址:https://www.cnblogs.com/songsong003/p/11123869.html