Java集合之LinkedList源码解析
下面我们来看看LinkedList的底层实现, 它继承抽象方法AbstractSequentialList<E>,实现List<E>, Deque<E>, Cloneable, java.io.Serializable接口 它的成员属性有, 1 transient int size = 0; 2 transient Node<E> first; 3 transient Node<E> last; size表示该集合的元素个数,初始值为0,first指向第一个Node,last指向最后一个Node, Node<E>是一个静态内部类, 1 private static class Node<E> { 2 E item; 3 Node<E> next; 4 Node<E> prev; 5 6 Node(Node<E> prev, E element, Node<E> next) { 7 this.item = element; 8 this.next = next; 9 this.prev = prev; 10 } 11 } item指当前元素,next是下一个元素的引用,prev是前一个元素的引用, LinkedList是一个双向链表, 百科中对于链表的定义是 双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。 所以