LinkedList底层源码分析
LinkedList集合
底层数据结构是双链表,查询慢,增删快,但如果操作的是首尾元素,速度也是极快的。
特有的API
底层原理
LinkedList底层是双向链表结构
节点对象Node
的定义如下
核心步骤如下:
- 刚开始创建的时候,底层创建了两个变量:一个记录头结点
first
,一个记录尾结点last
,默认都为null - 添加第一个元素时候,底层创建一个结点对象,
first
和last
都记录这个结点的地址值 - 添加第二个元素时候,底层创建一个结点对象,第一个结点会记录第二个结点的地址值,
last
会记录新结点的地址值。
源代码流程: