LinkedList底层结构详解
1. 说明
- LinkedList底层实现了双向链表和双端队列的特点
- 可以添加任意元素(元素可以重复),包括null
- 线程不安全
2. 底层操作机制
- LinkedList底层维护了一个双向链表
- LinkedList中维护了两个属性first 和 last 分别指向首节点和尾节点
- 每个节点(Node对象),里面又维护了prev ,next, item三个属性,其中通过prev指向前一个,通过next指向后一个节点,最终实现双向链表
- 所以LinkedList的元素的添加和删除,不是通过数组完成的,相对来说效率较高
3. 常用方法
增删查改...学习查看API
4. ArrayList和 LInkedList比较
5. 如何选择ArrayList和LinkedList
- 如果改查的操作多,选择ArrayList
- 如果增删的操作多,选择LinkedList
- 一般来说,在程序中,大部分都是查询,因此大部分情况下选择ArrayList
- 具体需求灵活选择
LinkedList底层结构详解
原文:https://www.cnblogs.com/mx-info/p/14730401.html