jdk/src/share/classes/java/util/LinkedList.java
changeset 7803 56bc97d69d93
parent 6124 ba148d56813d
child 7816 55a18147b4bf
equal deleted inserted replaced
7802:74f2ee2b62ba 7803:56bc97d69d93
   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;