java.lang.Object | ||||
↳ | java.util.AbstractCollection<E> | |||
↳ | java.util.AbstractList<E> | |||
↳ | java.util.AbstractSequentialList<E> | |||
↳ | java.util.LinkedList<E> |
LinkedList is an implementation of List
, backed by a doubly-linked list.
All optional operations including adding, removing, and replacing elements are supported.
All elements are permitted, including null.
This class is primarily useful if you need queue-like behavior. It may also be useful
as a list if you expect your lists to contain zero or one element, but still require the
ability to scale to slightly larger numbers of elements. In general, though, you should
probably use ArrayList
if you don't need the queue-like behavior.
[Expand]
Inherited Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.util.AbstractList
|
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Constructs a new empty instance of
LinkedList . | |||||||||||
Constructs a new instance of
LinkedList that holds all of the
elements contained in the specified collection . |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Adds the specified object at the end of this
LinkedList . | |||||||||||
Inserts the specified object into this
LinkedList at the
specified location. | |||||||||||
Adds the objects in the specified Collection to this
LinkedList . | |||||||||||
Inserts the objects in the specified collection at the specified location
in this
LinkedList . | |||||||||||
Adds the specified object at the beginning of this
LinkedList . | |||||||||||
Adds the specified object at the end of this
LinkedList . | |||||||||||
Removes all elements from this
LinkedList , leaving it empty. | |||||||||||
Returns a new
LinkedList with the same elements and size as this
LinkedList . | |||||||||||
Searches this
LinkedList for the specified object. | |||||||||||
Returns the iterator in reverse order, from tail to head.
| |||||||||||
Gets but does not remove the element at the head of the queue.
| |||||||||||
Returns the element at the specified location in this list.
| |||||||||||
Returns the first element in this
LinkedList . | |||||||||||
Returns the last element in this
LinkedList . | |||||||||||
Searches this list for the specified object and returns the index of the
first occurrence.
| |||||||||||
Searches this
LinkedList for the specified object and returns the
index of the last occurrence. | |||||||||||
Returns a ListIterator on the elements of this
LinkedList . | |||||||||||
Inserts the specified element into the queue provided that the condition
allows such an operation.
| |||||||||||
Inserts an element at the head of this deque unless it would violate size
limit.
| |||||||||||
Inserts an element at the tail of this deque unless it would violate size
limit.
| |||||||||||
Gets but does not remove the element at the head of the queue.
| |||||||||||
Gets but not removes the head element of this deque.
| |||||||||||
Gets but not removes the tail element of this deque.
| |||||||||||
Gets and removes the element at the head of the queue, or returns
null if there is no element in the queue. | |||||||||||
Gets and removes the head element of this deque.
| |||||||||||
Gets and removes the tail element of this deque.
| |||||||||||
Pops the head element of the deque, just same as removeFirst().
| |||||||||||
Pushes the element to the deque(at the head of the deque), just same as
addFirst(E).
| |||||||||||
Gets and removes the element at the head of the queue.
| |||||||||||
Removes the object at the specified location from this
LinkedList . | |||||||||||
Removes one instance of the specified object from this
Collection if one
is contained (optional). | |||||||||||
Removes the first object from this
LinkedList . | |||||||||||
Removes the first equivalent element of the specified object.
| |||||||||||
Removes the last object from this
LinkedList . | |||||||||||
Removes the last equivalent element of the specified object.
| |||||||||||
Replaces the element at the specified location in this
LinkedList
with the specified object. | |||||||||||
Returns the number of elements in this
LinkedList . | |||||||||||
Returns an array containing all elements contained in this
LinkedList . | |||||||||||
Returns a new array containing all elements contained in this
LinkedList . |
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class java.util.AbstractSequentialList
| |||||||||||
From class java.util.AbstractList
| |||||||||||
From class java.util.AbstractCollection
| |||||||||||
From class java.lang.Object
| |||||||||||
From interface java.lang.Iterable
| |||||||||||
From interface java.util.Collection
| |||||||||||
From interface java.util.Deque
| |||||||||||
From interface java.util.List
| |||||||||||
From interface java.util.Queue
|
Constructs a new instance of LinkedList
that holds all of the
elements contained in the specified collection
. The order of the
elements in this new LinkedList
will be determined by the
iteration order of collection
.
collection | the collection of elements to add. |
---|
Adds the specified object at the end of this LinkedList
.
object | the object to add. |
---|
Inserts the specified object into this LinkedList
at the
specified location. The object is inserted before any previous element at
the specified location. If the location is equal to the size of this
LinkedList
, the object is added at the end.
location | the index at which to insert. |
---|---|
object | the object to add. |
IndexOutOfBoundsException | if location < 0 || >= size()
|
---|
Adds the objects in the specified Collection to this LinkedList
.
collection | the collection of objects. |
---|
true
if this LinkedList
is modified,
false
otherwise.
Inserts the objects in the specified collection at the specified location
in this LinkedList
. The objects are added in the order they are
returned from the collection's iterator.
location | the index at which to insert. |
---|---|
collection | the collection of objects |
true
if this LinkedList
is modified,
false
otherwise.ClassCastException | if the class of an object is inappropriate for this list. |
---|---|
IllegalArgumentException | if an object cannot be added to this list. |
IndexOutOfBoundsException | if location < 0 || > size()
|
Adds the specified object at the beginning of this LinkedList
.
object | the object to add. |
---|
Adds the specified object at the end of this LinkedList
.
object | the object to add. |
---|
Returns a new LinkedList
with the same elements and size as this
LinkedList
.
LinkedList
.Searches this LinkedList
for the specified object.
object | the object to search for. |
---|
true
if object
is an element of this
LinkedList
, false
otherwise
Returns the iterator in reverse order, from tail to head.
Gets but does not remove the element at the head of the queue. Throws a
NoSuchElementException
if there is no element in the queue.
Returns the element at the specified location in this list.
location | the index of the element to return. |
---|
Returns the first element in this LinkedList
.
NoSuchElementException | if this LinkedList is empty.
|
---|
Returns the last element in this LinkedList
.
NoSuchElementException | if this LinkedList is empty
|
---|
Searches this list for the specified object and returns the index of the first occurrence.
object | the object to search for. |
---|
Searches this LinkedList
for the specified object and returns the
index of the last occurrence.
object | the object to search for |
---|
Returns a ListIterator on the elements of this LinkedList
. The
elements are iterated in the same order that they occur in the
LinkedList
. The iteration starts at the specified location.
location | the index at which to start the iteration |
---|
LinkedList
IndexOutOfBoundsException | if location < 0 || >= size() |
---|
Inserts the specified element into the queue provided that the condition
allows such an operation. The method is generally preferable to
add(E)
, since the latter might throw an exception if the
operation fails.
o | the specified element to insert into the queue. |
---|
true
if the operation succeeds and false
if it
fails.
Inserts an element at the head of this deque unless it would violate size limit. It is better than the addFirst(E) method in a size-limited deque, because the latter one may fail to add the element only by throwing an exception.
e | the element |
---|
Inserts an element at the tail of this deque unless it would violate size limit. It is better than the addLast(E) method in a size-limited deque, because the latter one may fail to add the element only by throwing an exception.
e | the element |
---|
Gets but does not remove the element at the head of the queue.
null
if there is
no element in the queue.
Gets but not removes the head element of this deque. This method returns null if the deque is empty.
Gets but not removes the tail element of this deque. This method returns null if the deque is empty.
Gets and removes the element at the head of the queue, or returns null
if there is no element in the queue.
null
if there is
no element in the queue.
Gets and removes the head element of this deque. This method returns null if the deque is empty.
Gets and removes the tail element of this deque. This method returns null if the deque is empty.
Pops the head element of the deque, just same as removeFirst().
Pushes the element to the deque(at the head of the deque), just same as addFirst(E).
e | the element |
---|
Gets and removes the element at the head of the queue. Throws a NoSuchElementException if there is no element in the queue.
Removes the object at the specified location from this LinkedList
.
location | the index of the object to remove |
---|
IndexOutOfBoundsException | if location < 0 || >= size()
|
---|
Removes one instance of the specified object from this Collection
if one
is contained (optional). This implementation iterates over this
Collection
and tests for each element e
returned by the iterator,
whether e
is equal to the given object. If object != null
then this test is performed using object.equals(e)
, otherwise
using object == null
. If an element equal to the given object is
found, then the remove
method is called on the iterator and
true
is returned, false
otherwise. If the iterator does
not support removing elements, an UnsupportedOperationException
is thrown.
object | the object to remove. |
---|
true
if this Collection
is modified, false
otherwise.Removes the first object from this LinkedList
.
NoSuchElementException | if this LinkedList is empty.
|
---|
Removes the first equivalent element of the specified object. If the deque does not contain the element, it is unchanged and returns false.
o | the element to be removed |
---|
Removes the last object from this LinkedList
.
NoSuchElementException | if this LinkedList is empty.
|
---|
Removes the last equivalent element of the specified object. If the deque does not contain the element, it is unchanged and returns false.
o | the element to be removed |
---|
Replaces the element at the specified location in this LinkedList
with the specified object.
location | the index at which to put the specified object. |
---|---|
object | the object to add. |
ClassCastException | if the class of an object is inappropriate for this list. |
---|---|
IllegalArgumentException | if an object cannot be added to this list. |
IndexOutOfBoundsException | if location < 0 || >= size()
|
Returns the number of elements in this LinkedList
.
LinkedList
.
Returns an array containing all elements contained in this
LinkedList
. If the specified array is large enough to hold the
elements, the specified array is used, otherwise an array of the same
type is created. If the specified array is used and is larger than this
LinkedList
, the array element following the collection elements
is set to null.
contents | the array. |
---|
LinkedList
.ArrayStoreException | if the type of an element in this LinkedList cannot
be stored in the type of the specified array.
|
---|
Returns a new array containing all elements contained in this
LinkedList
.
LinkedList
.