java.lang.Object | |
↳ | java.util.concurrent.CopyOnWriteArrayList<E> |
Implements a ArrayList
variant that is thread-safe. All
write operation result in a new copy of the underlying data being created.
Iterators reflect the state of the CopyOnWriteArrayList at the time they were
created. They are not updated to reflect subsequent changes to the list. In
addition, these iterators cannot be used for modifying the underlying
CopyOnWriteArrayList.
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Creates a new, empty instance of CopyOnWriteArrayList.
| |||||||||||
Creates a new instance of CopyOnWriteArrayList and fills it with the
contents of a given Collection.
| |||||||||||
Creates a new instance of CopyOnWriteArrayList and fills it with the
contents of a given array.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Adds the specified object at the end of this
List . | |||||||||||
Inserts the specified object into this
List at the specified location. | |||||||||||
Adds the objects in the specified collection to the end of this
List . | |||||||||||
Inserts the objects in the specified collection at the specified location
in this
List . | |||||||||||
Adds to this CopyOnWriteArrayList all those elements from a given
collection that are not yet part of the list.
| |||||||||||
Adds to this CopyOnWriteArrayList another element, given that this
element is not yet part of the list.
| |||||||||||
Removes all elements from this
List , leaving it empty. | |||||||||||
Creates and returns a copy of this
Object . | |||||||||||
Tests whether this
List contains the specified object. | |||||||||||
Tests whether this
List contains all objects contained in the
specified collection. | |||||||||||
Compares this instance with the specified object and indicates if they
are equal.
| |||||||||||
Returns the element at the specified location in this
List . | |||||||||||
Returns an integer hash code for this object.
| |||||||||||
Searches this
List for the specified object and returns the index of the
first occurrence. | |||||||||||
Returns the index of a given element, starting the search from a given
position in the list.
| |||||||||||
Returns whether this
List contains no elements. | |||||||||||
Returns an iterator on the elements of this
List . | |||||||||||
Returns the last index of a given element, starting the search from
a given position in the list and going backwards.
| |||||||||||
Searches this
List for the specified object and returns the index of the
last occurrence. | |||||||||||
Returns a list iterator on the elements of this
List . | |||||||||||
Returns a
List iterator on the elements of this List . | |||||||||||
Removes the object at the specified location from this
List . | |||||||||||
Removes the first occurrence of the specified object from this
List . | |||||||||||
Removes all occurrences in this
List of each object in the specified
collection. | |||||||||||
Removes all objects from this
List that are not contained in the
specified collection. | |||||||||||
Replaces the element at the specified location in this
List with the
specified object. | |||||||||||
Returns the number of elements in this
List . | |||||||||||
Returns a
List of the specified portion of this List from the given start
index to the end index minus one. | |||||||||||
Returns an array containing all elements contained in this
List . | |||||||||||
Returns an array containing all elements contained in this
List . | |||||||||||
Returns a string containing a concise, human-readable description of this
object.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class java.lang.Object
| |||||||||||
From interface java.lang.Iterable
| |||||||||||
From interface java.util.Collection
| |||||||||||
From interface java.util.List
|
Creates a new, empty instance of CopyOnWriteArrayList.
Creates a new instance of CopyOnWriteArrayList and fills it with the contents of a given Collection.
c | the collection the elements of which are to be copied into the new instance. |
---|
Creates a new instance of CopyOnWriteArrayList and fills it with the contents of a given array.
array | the array the elements of which are to be copied into the new instance. |
---|
Adds the specified object at the end of this List
.
e | the object to add. |
---|
Inserts the specified object into this List
at the specified location.
The object is inserted before the current element at the specified
location. If the location is equal to the size of this List
, the object
is added at the end. If the location is smaller than the size of this
List
, then all elements beyond the specified location are moved by one
position towards the end of the List
.
index | the index at which to insert. |
---|---|
e | the object to add. |
Adds the objects in the specified collection to the end of this List
. The
objects are added in the order in which they are returned from the
collection's iterator.
c | the collection of objects. |
---|
true
if this List
is modified, false
otherwise
(i.e. if the passed collection was empty).Inserts the objects in the specified collection at the specified location
in this List
. The objects are added in the order they are returned from
the collection's iterator.
index | the index at which to insert. |
---|---|
c | the collection of objects to be inserted. |
List
has been modified through the insertion, false
otherwise (i.e. if the passed collection was empty).Adds to this CopyOnWriteArrayList all those elements from a given collection that are not yet part of the list.
c | the collection from which the potential new elements are taken. |
---|
Adds to this CopyOnWriteArrayList another element, given that this element is not yet part of the list.
e | the potential new element. |
---|
Creates and returns a copy of this Object
. The default
implementation returns a so-called "shallow" copy: It creates a new
instance of the same class and then copies the field values (including
object references) from this instance to the new instance. A "deep" copy,
in contrast, would also recursively clone nested objects. A subclass that
needs to implement this kind of cloning should call super.clone()
to create the new instance and then create deep copies of the nested,
mutable objects.
Tests whether this List
contains the specified object.
o | the object to search for. |
---|
true
if object is an element of this List
, false
otherwise
Tests whether this List
contains all objects contained in the
specified collection.
c | the collection of objects |
---|
true
if all objects in the specified collection are
elements of this List
, false
otherwise.
Compares this instance with the specified object and indicates if they
are equal. In order to be equal, o
must represent the same object
as this instance using a class-specific comparison. The general contract
is that this comparison should be reflexive, symmetric, and transitive.
Also, no object reference other than null is equal to null.
The default implementation returns true
only if this ==
o
. See Writing a correct equals
method
if you intend implementing your own equals
method.
The general contract for the equals
and hashCode()
methods is that if equals
returns true
for
any two objects, then hashCode()
must return the same value for
these objects. This means that subclasses of Object
usually
override either both methods or neither of them.
o | the object to compare this instance with. |
---|
true
if the specified object is equal to this Object
; false
otherwise.Returns the element at the specified location in this List
.
index | the index of the element to return. |
---|
Returns an integer hash code for this object. By contract, any two
objects for which equals(Object)
returns true
must return
the same hash code value. This means that subclasses of Object
usually override both methods or neither method.
Note that hash values must not change over time unless information used in equals comparisons also changes.
See Writing a correct hashCode
method
if you intend implementing your own hashCode
method.
Searches this List
for the specified object and returns the index of the
first occurrence.
o | the object to search for. |
---|
Returns the index of a given element, starting the search from a given position in the list.
e | the element to search. |
---|---|
index | the index at which to start the search. |
Returns whether this List
contains no elements.
true
if this List
has no elements, false
otherwise.Returns an iterator on the elements of this List
. The elements are
iterated in the same order as they occur in the List
.
List
.Returns the last index of a given element, starting the search from a given position in the list and going backwards.
e | the element to search. |
---|---|
index | the index at which to start the search. |
Searches this List
for the specified object and returns the index of the
last occurrence.
o | the object to search for. |
---|
Returns a list iterator on the elements of this List
. The elements are
iterated in the same order as they occur in the List
. The iteration
starts at the specified location.
index | the index at which to start the iteration. |
---|
List
.Returns a List
iterator on the elements of this List
. The elements are
iterated in the same order that they occur in the List
.
List
iterator on the elements of this List
Removes the object at the specified location from this List
.
index | the index of the object to remove. |
---|
Removes the first occurrence of the specified object from this List
.
o | the object to remove. |
---|
List
was modified by this operation, false
otherwise.Removes all occurrences in this List
of each object in the specified
collection.
c | the collection of objects to remove. |
---|
true
if this List
is modified, false
otherwise.Removes all objects from this List
that are not contained in the
specified collection.
c | the collection of objects to retain. |
---|
true
if this List
is modified, false
otherwise.Replaces the element at the specified location in this List
with the
specified object. This operation does not change the size of the List
.
index | the index at which to put the specified object. |
---|---|
e | the object to insert. |
Returns the number of elements in this List
.
List
.
Returns a List
of the specified portion of this List
from the given start
index to the end index minus one. The returned List
is backed by this
List
so changes to it are reflected by the other.
fromIndex | the index at which to start the sublist. |
---|---|
toIndex | the index one past the end of the sublist. |
List
.Returns an array containing all elements contained in this List
. 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 List
, the array element following
the collection elements is set to null.
a | the array. |
---|
List
.Returns an array containing all elements contained in this List
.
List
.
Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:
getClass().getName() + '@' + Integer.toHexString(hashCode())
See Writing a useful toString
method
if you intend implementing your own toString
method.