
Java集合源码相关
钟期何遇
这个作者很懒,什么都没留下…
展开
-
CopyOnWriteArrayList源码解析学习总结
CopyOnWriteArrayList源码解析1.概览:1.1简介: CopyOnWriteArrayList和ArrayList的底层数据结构一样,也是个数组,采用volitale关键字修饰,一旦数组被更改,其他线程能立马被感知到。CopyOnWriteArrayList是一个写时复制的容器,对容器中的元素进行增删改时,不在当前容器上进行操作,而是复制一个新的的Object数组newElements,在新的容器内进行增删改。操作后再将原容器的引用指向新的容器 setArray(newElemen原创 2020-07-17 10:43:10 · 226 阅读 · 0 评论 -
HashMap源码解析
HashMap源码解析:本文除了自己看了些源码,也看了很多博客,还有慕课网的专栏。本文的用途主要是为了自己复习。1.概览:HashMap是基于哈希表的Map接口实现的,它存储的是内容是键值对<key,value>映射。此类不保证映射的顺序,假定哈希函数将元素适当的分布在各桶之间,可为基本操作(get和put)提供稳定的性能。1.1底层结构在JDK1.7时,HashMap是数组+链表的结构。在JDK1.8,HashMap是数组+链表+红黑树结构。当链表长度大于等于8时,会变成红黑树结构,原创 2020-07-15 16:11:01 · 171 阅读 · 0 评论 -
LinkedList源码解析
LinkedList源码解析1.概览:1.1底层结构: LinkedList底层使用的双向链表结构,使用 Node 存储链表节点信息,除了结点的值以外,包括前驱结点和后继结点。每个链表都维护了一个头指针first和一个尾指针last。这意味着我们可以从头开始正向遍历,或者是从尾开始逆向遍历,并且可以针对头部和尾部进行相应的操作。1.2 属性: public class LinkedList<E> extends AbstractSequentialList<原创 2020-07-12 17:45:59 · 158 阅读 · 0 评论