Appends the specified element to the end of this list.
e | element to be appended to this list |
true
(as specified by Collection.add
)
Inserts the specified element at the specified position in this list. Shifts the element currently at that position (if any) and any subsequent elements to the right (adds one to their indices).
index | index at which the specified element is to be inserted | |
element | element to be inserted |
Appends all of the elements in the specified collection to the end of this list, in the order that they are returned by the specified collection's iterator.
c | collection containing elements to be added to this list |
true
if this list changed as a result of the call
add(Object)
Inserts all of the elements in the specified collection into this list, starting at the specified position. Shifts the element currently at that position (if any) and any subsequent elements to the right (increases their indices). The new elements will appear in this list in the order that they are returned by the specified collection's iterator.
index | index at which to insert the first element from the specified collection | |
c | collection containing elements to be added to this list |
true
if this list changed as a result of the call
add(int,Object)
Removes all of the elements from this list. The list will be empty after this call returns.
Returns true
if this list contains the specified element.
More formally, returns true
if and only if this list contains
at least one element e
such that
(o==null ? e==null : o.equals(e)).
o | element whose presence in this list is to be tested |
true
if this list contains the specified element
Returns true
if this list contains all of the elements of the
specified collection.
c | collection to be checked for containment in this list |
true
if this list contains all of the elements of the
specified collection
contains(Object)
Performs the given action for each element of the Iterable
until all elements have been processed or the action throws an
exception. Unless otherwise specified by the implementing class,
actions are performed in the order of iteration (if an iteration order
is specified). Exceptions thrown by the action are relayed to the
caller.
action | The action to be performed for each element |
Returns the element at the specified position in this list.
index | index of the element to return |
Returns the index of the first occurrence of the specified element in this list, or -1 if this list does not contain the element. More formally, returns the lowest index i such that (o==null ? get(i)==null : o.equals(get(i))), or -1 if there is no such index.
o | element to search for |
Returns true
if this list contains no elements.
true
if this list contains no elements
Returns an iterator over the elements in this list in proper sequence.
The returned iterator provides a snapshot of the state of the list
when the iterator was constructed. No synchronization is needed while
traversing the iterator. The iterator does NOT support the
remove
method.
Returns the index of the last occurrence of the specified element in this list, or -1 if this list does not contain the element. More formally, returns the highest index i such that (o==null ? get(i)==null : o.equals(get(i))), or -1 if there is no such index.
o | element to search for |
Returns a list iterator over the elements in this list (in proper sequence).
The returned iterator provides a snapshot of the state of the list
when the iterator was constructed. No synchronization is needed while
traversing the iterator. The iterator does NOT support the
remove
, set
or add
methods.
Returns a list iterator over the elements in this list (in proper
sequence), starting at the specified position in the list.
The specified index indicates the first element that would be
returned by an initial call to next
.
An initial call to previous
would
return the element with the specified index minus one.
The returned iterator provides a snapshot of the state of the list
when the iterator was constructed. No synchronization is needed while
traversing the iterator. The iterator does NOT support the
remove
, set
or add
methods.
index | index of the first element to be returned from the
list iterator (by a call to next ) |
Removes the element at the specified position in this list. Shifts any subsequent elements to the left (subtracts one from their indices). Returns the element that was removed from the list.
index | the index of the element to be removed |
Removes the first occurrence of the specified element from this list,
if it is present. If this list does not contain the element, it is
unchanged. More formally, removes the element with the lowest index
i
such that
(o==null ? get(i)==null : o.equals(get(i)))
(if such an element exists). Returns true
if this list
contained the specified element (or equivalently, if this list
changed as a result of the call).
o | element to be removed from this list, if present |
true
if this list contained the specified element
Removes from this list all of its elements that are contained in the specified collection. This is a particularly expensive operation in this class because of the need for an internal temporary array.
c | collection containing elements to be removed from this list |
true
if this list changed as a result of the call
remove(Object)
Removes all of the elements of this collection that satisfy the given predicate. Errors or runtime exceptions thrown during iteration or by the predicate are relayed to the caller.
filter | a predicate which returns true for elements to be
removed |
true
if any elements were removed
Replaces each element of this list with the result of applying the operator to that element. Errors or runtime exceptions thrown by the operator are relayed to the caller.
operator | the operator to apply to each element |
Retains only the elements in this list that are contained in the specified collection. In other words, removes from this list all of its elements that are not contained in the specified collection.
c | collection containing elements to be retained in this list |
true
if this list changed as a result of the call
remove(Object)
Replaces the element at the specified position in this list with the specified element.
index | index of the element to replace | |
element | element to be stored at the specified position |
Returns the number of elements in this list.
Sorts this list according to the order induced by the specified
Comparator
.
All elements in this list must be mutually comparable using the
specified comparator (that is, c.compare(e1, e2)
must not throw
a ClassCastException
for any elements e1
and e2
in the list).
If the specified comparator is null
then all elements in this
list must implement the Comparable
interface and the elements'
natural ordering should be used.
This list must be modifiable, but need not be resizable.
c | the Comparator used to compare list elements.
A null value indicates that the elements'
natural ordering should be used |
Returns a Spliterator
over the elements in this list.
The Spliterator
reports Spliterator.IMMUTABLE
,
Spliterator.ORDERED
, Spliterator.SIZED
, and
Spliterator.SUBSIZED
.
The spliterator provides a snapshot of the state of the list when the spliterator was constructed. No synchronization is needed while operating on the spliterator.
Spliterator
over the elements in this list
Returns a view of the portion of this list between
fromIndex
, inclusive, and toIndex
, exclusive.
The returned list is backed by this list, so changes in the
returned list are reflected in this list.
The semantics of the list returned by this method become undefined if the backing list (i.e., this list) is modified in any way other than via the returned list.
fromIndex | low endpoint (inclusive) of the subList | |
toIndex | high endpoint (exclusive) of the subList |
Returns an array containing all of the elements in this list in proper sequence (from first to last element).
The returned array will be "safe" in that no references to it are maintained by this list. (In other words, this method must allocate a new array). The caller is thus free to modify the returned array.
This method acts as bridge between array-based and collection-based APIs.
Returns an array containing all of the elements in this list in proper sequence (from first to last element); the runtime type of the returned array is that of the specified array. If the list fits in the specified array, it is returned therein. Otherwise, a new array is allocated with the runtime type of the specified array and the size of this list.
If this list fits in the specified array with room to spare
(i.e., the array has more elements than this list), the element in
the array immediately following the end of the list is set to
null
. (This is useful in determining the length of this
list only if the caller knows that this list does not contain
any null elements.)
Like the toArray()
method, this method acts as bridge between
array-based and collection-based APIs. Further, this method allows
precise control over the runtime type of the output array, and may,
under certain circumstances, be used to save allocation costs.
Suppose x
is a list known to contain only strings.
The following code can be used to dump the list into a newly
allocated array of String
:
String[] y = x.toArray(new String[0]);
Note that toArray(new Object[0])
is identical in function to
toArray()
.
a | the array into which the elements of the list are to be stored, if it is big enough; otherwise, a new array of the same runtime type is allocated for this purpose. |
Diagram: Collection List