Engineering Full Stack Apps with Java and JavaScript
Doubly-linked list implementation
Implements all optional list operations
permits all elements (including null)
is not synchronized
could be "wrapped" using the Collections.synchronizedList method
best done at creation time, to prevent accidental unsynchronized access to the list
iterators returned by iterator and listIterator methods of LinkedList are fail-fast:
fails quickly and cleanly, rather than risking undetermined behaviour in the future.
if the list is structurally modified at any time after the iterator is created, except through the Iterator's own remove or add methods, the iterator will throw a ConcurrentModificationException.
Fail-fast iterators throw ConcurrentModificationException on a best-effort basis and cannot be guaranted; so we should not depend on it while coding.
List<E>
Deque<E>
Queue<E>
Serializable
Cloneable
Iterable<E>
Collection<E>
add(E e)
Appends the specified element to the end of this list
add(int index, E element)
Add at specified index
addAll(Collection<? extends E> c)
Add all from specified collection
addAll(int index, Collection<? extends E> c)
Add all at specified index
addFirst(E e)
Inserts at the beginning of this list.
addLast(E e)
Appends to the end of this list.
clear()
clear collection
clone()
returns a shallow copy of this LinkedList.
contains(Object o)
if o is present
containsAll(Collection<?> c)
if this collection contains all of the elements in the specified collection.
descendingIterator()
returns an iterator over the elements in this deque in reverse sequential order.
equals(Object o)
Check if meaningfully equal
element()
retrieves, but does not remove, the first element of this list.
get(int index)
returns element at index
getFirst()
returns the first element in this list.
getLast()
returns the last element in this list.
hashCode()
return hash code integer
indexOf(Object o)
returns index of o
isEmpty()
Check if empty
iterator()
return an iterator
lastIndexOf(Object o)
returns index of last occurrence of o
listIterator()
returns a list iterator
listIterator(int index)
returns a list iterator starting at the specified index
offer(E e)
adds the element as the last element of this list.
offerFirst(E e)
adds the element at the front of this list.
offerLast(E e)
inserts the element at the end of this list.
peek()
retrieves the first element of this list.
but does not remove
peekFirst()
retrieves the first element of this list, or null if this list is empty.
but does not remove,
peekLast()
retrieves the last element of this list, or null if this list is empty.
but does not remove
poll()
retrieves and removes the head (first element) of this list.
pollFirst()
retrieves and removes the first element of this list, or null if this list is empty.
pollLast()
retrieves and removes the last element of this list, or null if this list is empty.
pop()
pops an element from the stack represented by this list.
push(E e)
pushes an element onto the stack represented by this list.
remove(Object o)
Remove o
removeAll(Collection<?> c)
Remove all elements present in the specified collection
removeFirst()
removes and returns the first element from this list.
removeFirstOccurrence(Object o)
removes the first occurrence of the specified element in this list
removeLast()
removes and returns the last element from this list.
removeLastOccurrence(Object o)
removes the last occurrence of the element in this list
retainAll(Collection<?> c)
Retains only the elements in this collection that are contained in the specified collection
set(int index, E element)
replaces the element at the specified position in this list with the specified element
size()
size of the collection
subList(int fromIndex, int toIndex)
returns a view of the portion of this list between the specified fromIndex, inclusive, and toIndex, exclusive.
returned list is backed by this list, so non-structural changes in the returned list are reflected in this list, and vice-versa.
toArray()
convert to an array
toArray(T[] a)
runtime type of the returned array is that of the specified array.