理解一下LinkedList
LinkedList简单剖析
数据结构概念
LinkedList的数据结构的本质是双向链表,所以它的占用的内存空间是不连续的,可利用零碎的空间,但查找访问元素的话每次都要遍历节点,效率低。总结来说就是按顺序查找的线性结构,内存空间利用率高。
源码层次
- 继承抽象类与接口
public class LinkedList<E>
extends AbstractSequentialList<E>
implements List<E>, Deque<E>, Cloneable, java.io.Serializable{......}
实现了Deque接口,它具有队列和栈的性质
-
重要的成员变量
transient int size = 0; /** * Pointer to first node. * Invariant: (first == null && last == null) || * (first.prev == null && first.item != null) */ transient Node<E> first; /** * Pointer to last node. * Invariant: (first == null && last == null) || * (last.next == null && last.item != null) */ transient Node<E> last;
用transient修饰,不允许被反序列化。
有错误请联系笔者或在评论区指出,感谢