vue-vue傳送簡訊邏輯
阿新 • • 發佈:2020-10-07
LinkedList是使用雙向連結串列實現的。
LinkedList有一個內部類儲存連結串列上的每一個結點(Node)的資訊。
private static class Node<E> { E item; //當前結點的值 Node<E> next; //下一個結點的地址 Node<E> prev; //上一個結點的地址 Node(Node<E> prev, E element, Node<E> next) { this.item = element; this.next = next; this.prev = prev; } }
LinkedList有兩個Node屬性,儲存頭尾結點。新建集合時,頭尾結點都為null.
transient int size = 0; //集合的大小
transient Node<E> first; //頭結點
transient Node<E> last; //尾結點
LinkedList新增元素方法
新增方法預設的是向集合的尾部新增元素。
public boolean add(E e) { linkLast(e); return true; } void linkLast(E e) { final Node<E> l = last; //記錄最後一個結點,等下作為倒數第二個結點 final Node<E> newNode = new Node<>(l, e, null); //把新新增的元素作為最後一個結點 last = newNode; //最後一個結點的指向為新增的結點 if (l == null) first = newNode; //集合為空的話,頭結點指向新新增的結點 else l.next = newNode; //原始最後一個結點的下一個結點指向新新增的結點 size++; modCount++; }
圖示