✅作者简介:大家好,我是再无B~U~G,一个想要与大家共同进步的男人😉😉
🍎个人主页:再无B~U~G-优快云博客
目标:
1.掌握LinkedList
2.简单模拟实现LinkedList
1.LinkedList的使用
1.1 什么是LinkedList
LinkedList 的官方文档
LinkedList
的底层是双向链表结构
(
链表后面介绍
)
,由于链表没有将元素存储在连续的空间中,元素存储在单独的节点中,然后通过引用将节点连接起来了,因此在在任意位置插入或者删除元素时,不需要搬移元素,效率比较高。
双向不循环链表图:

在集合框架中,LinkedList也实现了List接口,具体如下:
【说明】
1. LinkedList 实现了 List 接口2. LinkedList 的底层使用了双向链表3. LinkedList 没有实现 RandomAccess 接口,因此 LinkedList 不支持随机访问4. LinkedList 的任意位置插入和删除元素时效率比较高,不用移动(时间复杂度为 O(1))5. LinkedList比较适合任意位置插入的场景![]()
2 LinkedList的使用
2.1. LinkedList的构造
方法
|
解释
|
LinkedList
()
|
无参构造
|
public LinkedList(Collection<? extends E> c)
|
使用其他集合容器中元素构造
List
|
public static void main(String[] args) {
// 构造一个空的LinkedList
List<Integer> list1 = new LinkedList<>();
List<String> list2 = new java.util.ArrayList<>();
list2.add("JavaSE");
list2.add("JavaWeb");
list2.add("JavaEE");
// 使用ArrayList构造LinkedList
List<String> list3 = new LinkedList<>(list2);
}