equal
deleted
inserted
replaced
120 /** |
120 /** |
121 * Links e as first element. |
121 * Links e as first element. |
122 */ |
122 */ |
123 private void linkFirst(E e) { |
123 private void linkFirst(E e) { |
124 final Node<E> f = first; |
124 final Node<E> f = first; |
125 final Node<E> newNode = new Node<E>(null, e, f); |
125 final Node<E> newNode = new Node<>(null, e, f); |
126 first = newNode; |
126 first = newNode; |
127 if (f == null) |
127 if (f == null) |
128 last = newNode; |
128 last = newNode; |
129 else |
129 else |
130 f.prev = newNode; |
130 f.prev = newNode; |
135 /** |
135 /** |
136 * Links e as last element. |
136 * Links e as last element. |
137 */ |
137 */ |
138 void linkLast(E e) { |
138 void linkLast(E e) { |
139 final Node<E> l = last; |
139 final Node<E> l = last; |
140 final Node<E> newNode = new Node<E>(l, e, null); |
140 final Node<E> newNode = new Node<>(l, e, null); |
141 last = newNode; |
141 last = newNode; |
142 if (l == null) |
142 if (l == null) |
143 first = newNode; |
143 first = newNode; |
144 else |
144 else |
145 l.next = newNode; |
145 l.next = newNode; |
151 * Inserts element e before non-null Node succ. |
151 * Inserts element e before non-null Node succ. |
152 */ |
152 */ |
153 void linkBefore(E e, Node<E> succ) { |
153 void linkBefore(E e, Node<E> succ) { |
154 // assert succ != null; |
154 // assert succ != null; |
155 final Node<E> pred = succ.prev; |
155 final Node<E> pred = succ.prev; |
156 final Node<E> newNode = new Node<E>(pred, e, succ); |
156 final Node<E> newNode = new Node<>(pred, e, succ); |
157 succ.prev = newNode; |
157 succ.prev = newNode; |
158 if (pred == null) |
158 if (pred == null) |
159 first = newNode; |
159 first = newNode; |
160 else |
160 else |
161 pred.next = newNode; |
161 pred.next = newNode; |
417 pred = succ.prev; |
417 pred = succ.prev; |
418 } |
418 } |
419 |
419 |
420 for (Object o : a) { |
420 for (Object o : a) { |
421 @SuppressWarnings("unchecked") E e = (E) o; |
421 @SuppressWarnings("unchecked") E e = (E) o; |
422 Node<E> newNode = new Node<E>(pred, e, null); |
422 Node<E> newNode = new Node<>(pred, e, null); |
423 if (pred == null) |
423 if (pred == null) |
424 first = newNode; |
424 first = newNode; |
425 else |
425 else |
426 pred.next = newNode; |
426 pred.next = newNode; |
427 pred = newNode; |
427 pred = newNode; |