![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Map
机器木易
这个作者很懒,什么都没留下…
展开
-
java集合---Map( LinkedHashMap,TreeMap)
LinkedHashMap HashMap由于使用了散列函数,无序的。但是有些场景下是需要有序的,比如缓存。HashMap就不能胜任。 LinkedHashMap就是一个升级版的HashMap。 思路与HashMap大体一样,使用的还是数组,链表,红黑树。特别的LinkedHashMap在每个节点上增加了一个前后指针,使得整个集合变得有序。 Entry节点如下 static class Entry<K,V> extends HashMap.Node<K,V> {原创 2020-08-10 22:12:03 · 115 阅读 · 0 评论 -
HashMap源码分析
HashMap的最小知识点 HashMap使用了数组和链表(红黑树)的数据结构 HashMap的默认初始长度是16(1<<4),当用户指定长度时,hashmap也会尽量调整为2的倍数 HashMap中发生hash冲突时,会使用链表将note节点链起来jdk1.8开始,链表的长度达到8就会转成红黑树,来提高查询效率 HashMap的扩容机制当容器中的节点数超过阈值就会实现扩容,将容量扩大一倍,对原容器中数据重新进行rehash hashmap中的最小单位,用来存放键值对 其中属性K,V用来存放数据原创 2020-06-20 19:41:17 · 77 阅读 · 0 评论