java.util.concurrent
Class CopyOnWriteArrayList<E>

java.lang.Object sample code for java.lang.Object definition code for java.lang.Object 
  extended by java.util.concurrent.CopyOnWriteArrayList<E>
Type Parameters:
E - the type of elements held in this collection
All Implemented Interfaces:
Serializable sample code for java.io.Serializable definition code for java.io.Serializable , Cloneable sample code for java.lang.Cloneable definition code for java.lang.Cloneable , Iterable sample code for java.lang.Iterable definition code for java.lang.Iterable <E>, Collection sample code for java.util.Collection definition code for java.util.Collection <E>, List sample code for java.util.List definition code for java.util.List <E>, RandomAccess sample code for java.util.RandomAccess definition code for java.util.RandomAccess

public class CopyOnWriteArrayList<E>
extends Object sample code for java.lang.Object definition code for java.lang.Object
implements List sample code for java.util.List definition code for java.util.List <E>, RandomAccess sample code for java.util.RandomAccess definition code for java.util.RandomAccess , Cloneable sample code for java.lang.Cloneable definition code for java.lang.Cloneable , Serializable sample code for java.io.Serializable definition code for java.io.Serializable

A thread-safe variant of ArrayList sample code for java.util.ArrayList definition code for java.util.ArrayList in which all mutative operations (add, set, and so on) are implemented by making a fresh copy of the underlying array.

This is ordinarily too costly, but may be more efficient than alternatives when traversal operations vastly outnumber mutations, and is useful when you cannot or don't want to synchronize traversals, yet need to preclude interference among concurrent threads. The "snapshot" style iterator method uses a reference to the state of the array at the point that the iterator was created. This array never changes during the lifetime of the iterator, so interference is impossible and the iterator is guaranteed not to throw ConcurrentModificationException. The iterator will not reflect additions, removals, or changes to the list since the iterator was created. Element-changing operations on iterators themselves (remove, set, and add) are not supported. These methods throw UnsupportedOperationException.

This class is a member of the Java Collections Framework.

Since:
1.5
See Also:
Serialized Form

Constructor Summary
CopyOnWriteArrayList sample code for java.util.concurrent.CopyOnWriteArrayList.CopyOnWriteArrayList() definition code for java.util.concurrent.CopyOnWriteArrayList.CopyOnWriteArrayList() ()
          Creates an empty list.
CopyOnWriteArrayList sample code for java.util.concurrent.CopyOnWriteArrayList.CopyOnWriteArrayList(java.util.Collection) definition code for java.util.concurrent.CopyOnWriteArrayList.CopyOnWriteArrayList(java.util.Collection) (Collection sample code for java.util.Collection definition code for java.util.Collection <? extends E> c)
          Creates a list containing the elements of the specified Collection, in the order they are returned by the Collection's iterator.
CopyOnWriteArrayList sample code for java.util.concurrent.CopyOnWriteArrayList.CopyOnWriteArrayList(E[]) definition code for java.util.concurrent.CopyOnWriteArrayList.CopyOnWriteArrayList(E[]) (E[] toCopyIn)
          Create a new CopyOnWriteArrayList holding a copy of given array.
 
Method Summary
 boolean add sample code for java.util.concurrent.CopyOnWriteArrayList.add(E) definition code for java.util.concurrent.CopyOnWriteArrayList.add(E) (E element)
          Appends the specified element to the end of this list.
 void add sample code for java.util.concurrent.CopyOnWriteArrayList.add(int, E) definition code for java.util.concurrent.CopyOnWriteArrayList.add(int, E) (int index, E element)
          Inserts the specified element at the specified position in this list.
 boolean addAll sample code for java.util.concurrent.CopyOnWriteArrayList.addAll(java.util.Collection) definition code for java.util.concurrent.CopyOnWriteArrayList.addAll(java.util.Collection) (Collection sample code for java.util.Collection definition code for java.util.Collection <? extends E> c)
          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.
 boolean addAll sample code for java.util.concurrent.CopyOnWriteArrayList.addAll(int, java.util.Collection) definition code for java.util.concurrent.CopyOnWriteArrayList.addAll(int, java.util.Collection) (int index, Collection sample code for java.util.Collection definition code for java.util.Collection <? extends E> c)
          Inserts all of the elements in the specified Collection into this list, starting at the specified position.
 int addAllAbsent sample code for java.util.concurrent.CopyOnWriteArrayList.addAllAbsent(java.util.Collection) definition code for java.util.concurrent.CopyOnWriteArrayList.addAllAbsent(java.util.Collection) (Collection sample code for java.util.Collection definition code for java.util.Collection <? extends E> c)
          Appends all of the elements in the specified Collection that are not already contained in this list, to the end of this list, in the order that they are returned by the specified Collection's Iterator.
 boolean addIfAbsent sample code for java.util.concurrent.CopyOnWriteArrayList.addIfAbsent(E) definition code for java.util.concurrent.CopyOnWriteArrayList.addIfAbsent(E) (E element)
          Append the element if not present.
 void clear sample code for java.util.concurrent.CopyOnWriteArrayList.clear() definition code for java.util.concurrent.CopyOnWriteArrayList.clear() ()
          Removes all of the elements from this list.
 Object sample code for java.lang.Object definition code for java.lang.Object clone sample code for java.util.concurrent.CopyOnWriteArrayList.clone() definition code for java.util.concurrent.CopyOnWriteArrayList.clone() ()
          Returns a shallow copy of this list.
 boolean contains sample code for java.util.concurrent.CopyOnWriteArrayList.contains(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.contains(java.lang.Object) (Object sample code for java.lang.Object definition code for java.lang.Object  elem)
          Returns true if this list contains the specified element.
 boolean containsAll sample code for java.util.concurrent.CopyOnWriteArrayList.containsAll(java.util.Collection) definition code for java.util.concurrent.CopyOnWriteArrayList.containsAll(java.util.Collection) (Collection sample code for java.util.Collection definition code for java.util.Collection <?> c)
          Returns true if this Collection contains all of the elements in the specified Collection.
 boolean equals sample code for java.util.concurrent.CopyOnWriteArrayList.equals(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.equals(java.lang.Object) (Object sample code for java.lang.Object definition code for java.lang.Object  o)
          Compares the specified Object with this List for equality.
 E get sample code for java.util.concurrent.CopyOnWriteArrayList.get(int) definition code for java.util.concurrent.CopyOnWriteArrayList.get(int) (int index)
          Returns the element at the specified position in this list.
 int hashCode sample code for java.util.concurrent.CopyOnWriteArrayList.hashCode() definition code for java.util.concurrent.CopyOnWriteArrayList.hashCode() ()
          Returns the hash code value for this List.
 int indexOf sample code for java.util.concurrent.CopyOnWriteArrayList.indexOf(E, int) definition code for java.util.concurrent.CopyOnWriteArrayList.indexOf(E, int) (E elem, int index)
          Searches for the first occurrence of the given argument, beginning the search at index, and testing for equality using the equals method.
 int indexOf sample code for java.util.concurrent.CopyOnWriteArrayList.indexOf(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.indexOf(java.lang.Object) (Object sample code for java.lang.Object definition code for java.lang.Object  elem)
          Searches for the first occurrence of the given argument, testing for equality using the equals method.
 boolean isEmpty sample code for java.util.concurrent.CopyOnWriteArrayList.isEmpty() definition code for java.util.concurrent.CopyOnWriteArrayList.isEmpty() ()
          Tests if this list has no elements.
 Iterator sample code for java.util.Iterator definition code for java.util.Iterator <E> iterator sample code for java.util.concurrent.CopyOnWriteArrayList.iterator() definition code for java.util.concurrent.CopyOnWriteArrayList.iterator() ()
          Returns an Iterator over the elements contained in this collection.
 int lastIndexOf sample code for java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(E, int) definition code for java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(E, int) (E elem, int index)
          Searches backwards for the specified object, starting from the specified index, and returns an index to it.
 int lastIndexOf sample code for java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(java.lang.Object) (Object sample code for java.lang.Object definition code for java.lang.Object  elem)
          Returns the index of the last occurrence of the specified object in this list.
 ListIterator sample code for java.util.ListIterator definition code for java.util.ListIterator <E> listIterator sample code for java.util.concurrent.CopyOnWriteArrayList.listIterator() definition code for java.util.concurrent.CopyOnWriteArrayList.listIterator() ()
          Returns an Iterator of the elements in this List (in proper sequence).
 ListIterator sample code for java.util.ListIterator definition code for java.util.ListIterator <E> listIterator sample code for java.util.concurrent.CopyOnWriteArrayList.listIterator(int) definition code for java.util.concurrent.CopyOnWriteArrayList.listIterator(int) (int index)
          Returns a ListIterator of the elements in this List (in proper sequence), starting at the specified position in the List.
 E remove sample code for java.util.concurrent.CopyOnWriteArrayList.remove(int) definition code for java.util.concurrent.CopyOnWriteArrayList.remove(int) (int index)
          Removes the element at the specified position in this list.
 boolean remove sample code for java.util.concurrent.CopyOnWriteArrayList.remove(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.remove(java.lang.Object) (Object sample code for java.lang.Object definition code for java.lang.Object  o)
          Removes a single instance of the specified element from this list, if it is present (optional operation).
 boolean removeAll sample code for java.util.concurrent.CopyOnWriteArrayList.removeAll(java.util.Collection) definition code for java.util.concurrent.CopyOnWriteArrayList.removeAll(java.util.Collection) (Collection sample code for java.util.Collection definition code for java.util.Collection <?> c)
          Removes from this Collection all of its elements that are contained in the specified Collection.
 boolean retainAll sample code for java.util.concurrent.CopyOnWriteArrayList.retainAll(java.util.Collection) definition code for java.util.concurrent.CopyOnWriteArrayList.retainAll(java.util.Collection) (Collection sample code for java.util.Collection definition code for java.util.Collection <?> c)
          Retains only the elements in this Collection that are contained in the specified Collection (optional operation).
 E set sample code for java.util.concurrent.CopyOnWriteArrayList.set(int, E) definition code for java.util.concurrent.CopyOnWriteArrayList.set(int, E) (int index, E element)
          Replaces the element at the specified position in this list with the specified element.
 int size sample code for java.util.concurrent.CopyOnWriteArrayList.size() definition code for java.util.concurrent.CopyOnWriteArrayList.size() ()
          Returns the number of elements in this list.
 List sample code for java.util.List definition code for java.util.List <E> subList sample code for java.util.concurrent.CopyOnWriteArrayList.subList(int, int) definition code for java.util.concurrent.CopyOnWriteArrayList.subList(int, int) (int fromIndex, int toIndex)
          Returns a view of the portion of this List between fromIndex, inclusive, and toIndex, exclusive.
 Object sample code for java.lang.Object definition code for java.lang.Object [] toArray sample code for java.util.concurrent.CopyOnWriteArrayList.toArray() definition code for java.util.concurrent.CopyOnWriteArrayList.toArray() ()
          Returns an array containing all of the elements in this list in the correct order.
<T> T[]
toArray sample code for java.util.concurrent.CopyOnWriteArrayList.toArray(T[]) definition code for java.util.concurrent.CopyOnWriteArrayList.toArray(T[]) (T[] a)
          Returns an array containing all of the elements in this list in the correct order.
 String sample code for java.lang.String definition code for java.lang.String toString sample code for java.util.concurrent.CopyOnWriteArrayList.toString() definition code for java.util.concurrent.CopyOnWriteArrayList.toString() ()
          Returns a string representation of this Collection, containing the String representation of each element.
 
Methods inherited from class java.lang.Object sample code for java.lang.Object definition code for java.lang.Object
finalize sample code for java.lang.Object.finalize() definition code for java.lang.Object.finalize() , getClass sample code for java.lang.Object.getClass() definition code for java.lang.Object.getClass() , notify sample code for java.lang.Object.notify() definition code for java.lang.Object.notify() , notifyAll sample code for java.lang.Object.notifyAll() definition code for java.lang.Object.notifyAll() , wait sample code for java.lang.Object.wait() definition code for java.lang.Object.wait() , wait sample code for java.lang.Object.wait(long) definition code for java.lang.Object.wait(long) , wait sample code for java.lang.Object.wait(long, int) definition code for java.lang.Object.wait(long, int)
 

Constructor Detail

CopyOnWriteArrayList sample code for java.util.concurrent.CopyOnWriteArrayList() definition code for java.util.concurrent.CopyOnWriteArrayList()

public CopyOnWriteArrayList()
Creates an empty list.


CopyOnWriteArrayList sample code for java.util.concurrent.CopyOnWriteArrayList(java.util.Collection<? extends E>) definition code for java.util.concurrent.CopyOnWriteArrayList(java.util.Collection<? extends E>)

public CopyOnWriteArrayList(Collection sample code for java.util.Collection definition code for java.util.Collection <? extends E> c)
Creates a list containing the elements of the specified Collection, in the order they are returned by the Collection's iterator.

Parameters:
c - the collection of initially held elements

CopyOnWriteArrayList sample code for java.util.concurrent.CopyOnWriteArrayList(E[]) definition code for java.util.concurrent.CopyOnWriteArrayList(E[])

public CopyOnWriteArrayList(E[] toCopyIn)
Create a new CopyOnWriteArrayList holding a copy of given array.

Parameters:
toCopyIn - the array (a copy of this array is used as the internal array)
Method Detail

size sample code for java.util.concurrent.CopyOnWriteArrayList.size() definition code for java.util.concurrent.CopyOnWriteArrayList.size()

public int size()
Returns the number of elements in this list.

Specified by:
size sample code for java.util.Collection.size() definition code for java.util.Collection.size() in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
size sample code for java.util.List.size() definition code for java.util.List.size() in interface List sample code for java.util.List definition code for java.util.List <E>
Returns:
the number of elements in this list.

isEmpty sample code for java.util.concurrent.CopyOnWriteArrayList.isEmpty() definition code for java.util.concurrent.CopyOnWriteArrayList.isEmpty()

public boolean isEmpty()
Tests if this list has no elements.

Specified by:
isEmpty sample code for java.util.Collection.isEmpty() definition code for java.util.Collection.isEmpty() in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
isEmpty sample code for java.util.List.isEmpty() definition code for java.util.List.isEmpty() in interface List sample code for java.util.List definition code for java.util.List <E>
Returns:
true if this list has no elements; false otherwise.

contains sample code for java.util.concurrent.CopyOnWriteArrayList.contains(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.contains(java.lang.Object)

public boolean contains(Object sample code for java.lang.Object definition code for java.lang.Object  elem)
Returns true if this list contains the specified element.

Specified by:
contains sample code for java.util.Collection.contains(java.lang.Object) definition code for java.util.Collection.contains(java.lang.Object) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
contains sample code for java.util.List.contains(java.lang.Object) definition code for java.util.List.contains(java.lang.Object) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
elem - element whose presence in this List is to be tested.
Returns:
true if the specified element is present; false otherwise.

indexOf sample code for java.util.concurrent.CopyOnWriteArrayList.indexOf(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.indexOf(java.lang.Object)

public int indexOf(Object sample code for java.lang.Object definition code for java.lang.Object  elem)
Searches for the first occurrence of the given argument, testing for equality using the equals method.

Specified by:
indexOf sample code for java.util.List.indexOf(java.lang.Object) definition code for java.util.List.indexOf(java.lang.Object) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
elem - an object.
Returns:
the index of the first occurrence of the argument in this list; returns -1 if the object is not found.
See Also:
Object.equals(Object) sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object)

indexOf sample code for java.util.concurrent.CopyOnWriteArrayList.indexOf(E, int) definition code for java.util.concurrent.CopyOnWriteArrayList.indexOf(E, int)

public int indexOf(E elem,
                   int index)
Searches for the first occurrence of the given argument, beginning the search at index, and testing for equality using the equals method.

Parameters:
elem - an object.
index - the index to start searching from.
Returns:
the index of the first occurrence of the object argument in this List at position index or later in the List; returns -1 if the object is not found.
See Also:
Object.equals(Object) sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object)

lastIndexOf sample code for java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(java.lang.Object)

public int lastIndexOf(Object sample code for java.lang.Object definition code for java.lang.Object  elem)
Returns the index of the last occurrence of the specified object in this list.

Specified by:
lastIndexOf sample code for java.util.List.lastIndexOf(java.lang.Object) definition code for java.util.List.lastIndexOf(java.lang.Object) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
elem - the desired element.
Returns:
the index of the last occurrence of the specified object in this list; returns -1 if the object is not found.

lastIndexOf sample code for java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(E, int) definition code for java.util.concurrent.CopyOnWriteArrayList.lastIndexOf(E, int)

public int lastIndexOf(E elem,
                       int index)
Searches backwards for the specified object, starting from the specified index, and returns an index to it.

Parameters:
elem - the desired element.
index - the index to start searching from.
Returns:
the index of the last occurrence of the specified object in this List at position less than index in the List; -1 if the object is not found.

clone sample code for java.util.concurrent.CopyOnWriteArrayList.clone() definition code for java.util.concurrent.CopyOnWriteArrayList.clone()

public Object sample code for java.lang.Object definition code for java.lang.Object  clone()
Returns a shallow copy of this list. (The elements themselves are not copied.)

Overrides:
clone sample code for java.lang.Object.clone() definition code for java.lang.Object.clone() in class Object sample code for java.lang.Object definition code for java.lang.Object
Returns:
a clone of this list.
See Also:
Cloneable sample code for java.lang.Cloneable definition code for java.lang.Cloneable

toArray sample code for java.util.concurrent.CopyOnWriteArrayList.toArray() definition code for java.util.concurrent.CopyOnWriteArrayList.toArray()

public Object sample code for java.lang.Object definition code for java.lang.Object [] toArray()
Returns an array containing all of the elements in this list in the correct order.

Specified by:
toArray sample code for java.util.Collection.toArray() definition code for java.util.Collection.toArray() in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
toArray sample code for java.util.List.toArray() definition code for java.util.List.toArray() in interface List sample code for java.util.List definition code for java.util.List <E>
Returns:
an array containing all of the elements in this list in the correct order.
See Also:
Arrays.asList(Object[]) sample code for java.util.Arrays.asList(T...) definition code for java.util.Arrays.asList(T...)

toArray sample code for java.util.concurrent.CopyOnWriteArrayList.<T>toArray(T[]) definition code for java.util.concurrent.CopyOnWriteArrayList.<T>toArray(T[])

public <T> T[] toArray(T[] a)
Returns an array containing all of the elements in this list in the correct order. 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 the list fits in the specified array with room to spare (i.e., the array has more elements than the list), the element in the array immediately following the end of the collection is set to null. This is useful in determining the length of the list only if the caller knows that the list does not contain any null elements.

Specified by:
toArray sample code for java.util.Collection.toArray(T[]) definition code for java.util.Collection.toArray(T[]) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
toArray sample code for java.util.List.toArray(T[]) definition code for java.util.List.toArray(T[]) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
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.
Returns:
an array containing the elements of the list.
Throws:
ArrayStoreException sample code for java.lang.ArrayStoreException definition code for java.lang.ArrayStoreException - the runtime type of a is not a supertype of the runtime type of every element in this list.

get sample code for java.util.concurrent.CopyOnWriteArrayList.get(int) definition code for java.util.concurrent.CopyOnWriteArrayList.get(int)

public E get(int index)
Returns the element at the specified position in this list.

Specified by:
get sample code for java.util.List.get(int) definition code for java.util.List.get(int) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
index - index of element to return.
Returns:
the element at the specified position in this list.
Throws:
IndexOutOfBoundsException sample code for java.lang.IndexOutOfBoundsException definition code for java.lang.IndexOutOfBoundsException - if index is out of range (index < 0 || index >= size()).

set sample code for java.util.concurrent.CopyOnWriteArrayList.set(int, E) definition code for java.util.concurrent.CopyOnWriteArrayList.set(int, E)

public E set(int index,
             E element)
Replaces the element at the specified position in this list with the specified element.

Specified by:
set sample code for java.util.List.set(int, E) definition code for java.util.List.set(int, E) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
index - index of element to replace.
element - element to be stored at the specified position.
Returns:
the element previously at the specified position.
Throws:
IndexOutOfBoundsException sample code for java.lang.IndexOutOfBoundsException definition code for java.lang.IndexOutOfBoundsException - if index out of range (index < 0 || index >= size()).

add sample code for java.util.concurrent.CopyOnWriteArrayList.add(E) definition code for java.util.concurrent.CopyOnWriteArrayList.add(E)

public boolean add(E element)
Appends the specified element to the end of this list.

Specified by:
add sample code for java.util.Collection.add(E) definition code for java.util.Collection.add(E) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
add sample code for java.util.List.add(E) definition code for java.util.List.add(E) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
element - element to be appended to this list.
Returns:
true (as per the general contract of Collection.add).

add sample code for java.util.concurrent.CopyOnWriteArrayList.add(int, E) definition code for java.util.concurrent.CopyOnWriteArrayList.add(int, E)

public void add(int index,
                E element)
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).

Specified by:
add sample code for java.util.List.add(int, E) definition code for java.util.List.add(int, E) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
index - index at which the specified element is to be inserted.
element - element to be inserted.
Throws:
IndexOutOfBoundsException sample code for java.lang.IndexOutOfBoundsException definition code for java.lang.IndexOutOfBoundsException - if index is out of range (index < 0 || index > size()).

remove sample code for java.util.concurrent.CopyOnWriteArrayList.remove(int) definition code for java.util.concurrent.CopyOnWriteArrayList.remove(int)

public E remove(int index)
Removes the element at the specified position in this list. Shifts any subsequent elements to the left (subtracts one from their indices).

Specified by:
remove sample code for java.util.List.remove(int) definition code for java.util.List.remove(int) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
index - the index of the element to removed.
Returns:
the element that was removed from the list.
Throws:
IndexOutOfBoundsException sample code for java.lang.IndexOutOfBoundsException definition code for java.lang.IndexOutOfBoundsException - if index out of range (index < 0 || index >= size()).

remove sample code for java.util.concurrent.CopyOnWriteArrayList.remove(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.remove(java.lang.Object)

public boolean remove(Object sample code for java.lang.Object definition code for java.lang.Object  o)
Removes a single instance of the specified element from this list, if it is present (optional operation). More formally, removes an element e such that (o==null ? e==null : o.equals(e)), if the list contains one or more such elements. Returns true if the list contained the specified element (or equivalently, if the list changed as a result of the call).

Specified by:
remove sample code for java.util.Collection.remove(java.lang.Object) definition code for java.util.Collection.remove(java.lang.Object) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
remove sample code for java.util.List.remove(java.lang.Object) definition code for java.util.List.remove(java.lang.Object) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
o - element to be removed from this list, if present.
Returns:
true if the list contained the specified element.

addIfAbsent sample code for java.util.concurrent.CopyOnWriteArrayList.addIfAbsent(E) definition code for java.util.concurrent.CopyOnWriteArrayList.addIfAbsent(E)

public boolean addIfAbsent(E element)
Append the element if not present.

Parameters:
element - element to be added to this Collection, if absent.
Returns:
true if added

containsAll sample code for java.util.concurrent.CopyOnWriteArrayList.containsAll(java.util.Collection<?>) definition code for java.util.concurrent.CopyOnWriteArrayList.containsAll(java.util.Collection<?>)

public boolean containsAll(Collection sample code for java.util.Collection definition code for java.util.Collection <?> c)
Returns true if this Collection contains all of the elements in the specified Collection.

This implementation iterates over the specified Collection, checking each element returned by the Iterator in turn to see if it's contained in this Collection. If all elements are so contained true is returned, otherwise false.

Specified by:
containsAll sample code for java.util.Collection.containsAll(java.util.Collection) definition code for java.util.Collection.containsAll(java.util.Collection) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
containsAll sample code for java.util.List.containsAll(java.util.Collection) definition code for java.util.List.containsAll(java.util.Collection) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
c - the collection
Returns:
true if all elements are contained
See Also:
Collection.contains(Object) sample code for java.util.Collection.contains(java.lang.Object) definition code for java.util.Collection.contains(java.lang.Object)

removeAll sample code for java.util.concurrent.CopyOnWriteArrayList.removeAll(java.util.Collection<?>) definition code for java.util.concurrent.CopyOnWriteArrayList.removeAll(java.util.Collection<?>)

public boolean removeAll(Collection sample code for java.util.Collection definition code for java.util.Collection <?> c)
Removes from this Collection 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.

Specified by:
removeAll sample code for java.util.Collection.removeAll(java.util.Collection) definition code for java.util.Collection.removeAll(java.util.Collection) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
removeAll sample code for java.util.List.removeAll(java.util.Collection) definition code for java.util.List.removeAll(java.util.Collection) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
c - the collection
Returns:
true if this Collection changed as a result of the call.
See Also:
Collection.remove(Object) sample code for java.util.Collection.remove(java.lang.Object) definition code for java.util.Collection.remove(java.lang.Object) , Collection.contains(Object) sample code for java.util.Collection.contains(java.lang.Object) definition code for java.util.Collection.contains(java.lang.Object)

retainAll sample code for java.util.concurrent.CopyOnWriteArrayList.retainAll(java.util.Collection<?>) definition code for java.util.concurrent.CopyOnWriteArrayList.retainAll(java.util.Collection<?>)

public boolean retainAll(Collection sample code for java.util.Collection definition code for java.util.Collection <?> c)
Retains only the elements in this Collection that are contained in the specified Collection (optional operation). In other words, removes from this Collection all of its elements that are not contained in the specified Collection.

Specified by:
retainAll sample code for java.util.Collection.retainAll(java.util.Collection) definition code for java.util.Collection.retainAll(java.util.Collection) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
retainAll sample code for java.util.List.retainAll(java.util.Collection) definition code for java.util.List.retainAll(java.util.Collection) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
c - the collection
Returns:
true if this Collection changed as a result of the call.
See Also:
Collection.remove(Object) sample code for java.util.Collection.remove(java.lang.Object) definition code for java.util.Collection.remove(java.lang.Object) , Collection.contains(Object) sample code for java.util.Collection.contains(java.lang.Object) definition code for java.util.Collection.contains(java.lang.Object)

addAllAbsent sample code for java.util.concurrent.CopyOnWriteArrayList.addAllAbsent(java.util.Collection<? extends E>) definition code for java.util.concurrent.CopyOnWriteArrayList.addAllAbsent(java.util.Collection<? extends E>)

public int addAllAbsent(Collection sample code for java.util.Collection definition code for java.util.Collection <? extends E> c)
Appends all of the elements in the specified Collection that are not already contained in this list, to the end of this list, in the order that they are returned by the specified Collection's Iterator.

Parameters:
c - elements to be added into this list.
Returns:
the number of elements added

clear sample code for java.util.concurrent.CopyOnWriteArrayList.clear() definition code for java.util.concurrent.CopyOnWriteArrayList.clear()

public void clear()
Removes all of the elements from this list.

Specified by:
clear sample code for java.util.Collection.clear() definition code for java.util.Collection.clear() in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
clear sample code for java.util.List.clear() definition code for java.util.List.clear() in interface List sample code for java.util.List definition code for java.util.List <E>

addAll sample code for java.util.concurrent.CopyOnWriteArrayList.addAll(java.util.Collection<? extends E>) definition code for java.util.concurrent.CopyOnWriteArrayList.addAll(java.util.Collection<? extends E>)

public boolean addAll(Collection sample code for java.util.Collection definition code for java.util.Collection <? extends E> c)
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.

Specified by:
addAll sample code for java.util.Collection.addAll(java.util.Collection) definition code for java.util.Collection.addAll(java.util.Collection) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
addAll sample code for java.util.List.addAll(java.util.Collection) definition code for java.util.List.addAll(java.util.Collection) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
c - elements to be inserted into this list.
Returns:
true if any elements are added
See Also:
Collection.add(Object) sample code for java.util.Collection.add(E) definition code for java.util.Collection.add(E)

addAll sample code for java.util.concurrent.CopyOnWriteArrayList.addAll(int, java.util.Collection<? extends E>) definition code for java.util.concurrent.CopyOnWriteArrayList.addAll(int, java.util.Collection<? extends E>)

public boolean addAll(int index,
                      Collection sample code for java.util.Collection definition code for java.util.Collection <? extends E> c)
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 the list in the order that they are returned by the specified Collection's iterator.

Specified by:
addAll sample code for java.util.List.addAll(int, java.util.Collection) definition code for java.util.List.addAll(int, java.util.Collection) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
index - index at which to insert first element from the specified collection.
c - elements to be inserted into this list.
Returns:
true if any elements are added
Throws:
IndexOutOfBoundsException sample code for java.lang.IndexOutOfBoundsException definition code for java.lang.IndexOutOfBoundsException - index out of range (index < 0 || index > size()).

toString sample code for java.util.concurrent.CopyOnWriteArrayList.toString() definition code for java.util.concurrent.CopyOnWriteArrayList.toString()

public String sample code for java.lang.String definition code for java.lang.String  toString()
Returns a string representation of this Collection, containing the String representation of each element.

Overrides:
toString sample code for java.lang.Object.toString() definition code for java.lang.Object.toString() in class Object sample code for java.lang.Object definition code for java.lang.Object
Returns:
a string representation of the object.

equals sample code for java.util.concurrent.CopyOnWriteArrayList.equals(java.lang.Object) definition code for java.util.concurrent.CopyOnWriteArrayList.equals(java.lang.Object)

public boolean equals(Object sample code for java.lang.Object definition code for java.lang.Object  o)
Compares the specified Object with this List for equality. Returns true if and only if the specified Object is also a List, both Lists have the same size, and all corresponding pairs of elements in the two Lists are equal. (Two elements e1 and e2 are equal if (e1==null ? e2==null : e1.equals(e2)).) In other words, two Lists are defined to be equal if they contain the same elements in the same order.

This implementation first checks if the specified object is this List. If so, it returns true; if not, it checks if the specified object is a List. If not, it returns false; if so, it iterates over both lists, comparing corresponding pairs of elements. If any comparison returns false, this method returns false. If either Iterator runs out of elements before the other it returns false (as the Lists are of unequal length); otherwise it returns true when the iterations complete.

Specified by:
equals sample code for java.util.Collection.equals(java.lang.Object) definition code for java.util.Collection.equals(java.lang.Object) in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
equals sample code for java.util.List.equals(java.lang.Object) definition code for java.util.List.equals(java.lang.Object) in interface List sample code for java.util.List definition code for java.util.List <E>
Overrides:
equals sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) in class Object sample code for java.lang.Object definition code for java.lang.Object
Parameters:
o - the Object to be compared for equality with this List.
Returns:
true if the specified Object is equal to this List.
See Also:
Object.hashCode() sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() , Hashtable sample code for java.util.Hashtable definition code for java.util.Hashtable

hashCode sample code for java.util.concurrent.CopyOnWriteArrayList.hashCode() definition code for java.util.concurrent.CopyOnWriteArrayList.hashCode()

public int hashCode()
Returns the hash code value for this List.

This implementation uses the definition in List.hashCode() sample code for java.util.List.hashCode() definition code for java.util.List.hashCode() .

Specified by:
hashCode sample code for java.util.Collection.hashCode() definition code for java.util.Collection.hashCode() in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
hashCode sample code for java.util.List.hashCode() definition code for java.util.List.hashCode() in interface List sample code for java.util.List definition code for java.util.List <E>
Overrides:
hashCode sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() in class Object sample code for java.lang.Object definition code for java.lang.Object
Returns:
the hash code
See Also:
Object.equals(java.lang.Object) sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) , Hashtable sample code for java.util.Hashtable definition code for java.util.Hashtable

iterator sample code for java.util.concurrent.CopyOnWriteArrayList.iterator() definition code for java.util.concurrent.CopyOnWriteArrayList.iterator()

public Iterator sample code for java.util.Iterator definition code for java.util.Iterator <E> iterator()
Returns an Iterator over the elements contained in this collection. The 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.

Specified by:
iterator sample code for java.lang.Iterable.iterator() definition code for java.lang.Iterable.iterator() in interface Iterable sample code for java.lang.Iterable definition code for java.lang.Iterable <E>
Specified by:
iterator sample code for java.util.Collection.iterator() definition code for java.util.Collection.iterator() in interface Collection sample code for java.util.Collection definition code for java.util.Collection <E>
Specified by:
iterator sample code for java.util.List.iterator() definition code for java.util.List.iterator() in interface List sample code for java.util.List definition code for java.util.List <E>
Returns:
the iterator

listIterator sample code for java.util.concurrent.CopyOnWriteArrayList.listIterator() definition code for java.util.concurrent.CopyOnWriteArrayList.listIterator()

public ListIterator sample code for java.util.ListIterator definition code for java.util.ListIterator <E> listIterator()
Returns an Iterator of the elements in this List (in proper sequence). The 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.

Specified by:
listIterator sample code for java.util.List.listIterator() definition code for java.util.List.listIterator() in interface List sample code for java.util.List definition code for java.util.List <E>
Returns:
the iterator

listIterator sample code for java.util.concurrent.CopyOnWriteArrayList.listIterator(int) definition code for java.util.concurrent.CopyOnWriteArrayList.listIterator(int)

public ListIterator sample code for java.util.ListIterator definition code for java.util.ListIterator <E> listIterator(int index)
Returns a ListIterator of 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 nextElement. An initial call to previousElement would return the element with the specified index minus one. The ListIterator returned by this implementation will throw an UnsupportedOperationException in its remove, set and add methods.

Specified by:
listIterator sample code for java.util.List.listIterator(int) definition code for java.util.List.listIterator(int) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
index - index of first element to be returned from the ListIterator (by a call to getNext).
Returns:
the iterator
Throws:
IndexOutOfBoundsException sample code for java.lang.IndexOutOfBoundsException definition code for java.lang.IndexOutOfBoundsException - index is out of range (index < 0 || index > size()).

subList sample code for java.util.concurrent.CopyOnWriteArrayList.subList(int, int) definition code for java.util.concurrent.CopyOnWriteArrayList.subList(int, int)

public List sample code for java.util.List definition code for java.util.List <E> subList(int fromIndex,
                       int toIndex)
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, and vice-versa. While mutative operations are supported, they are probably not very useful for CopyOnWriteArrayLists.

The semantics of the List returned by this method become undefined if the backing list (i.e., this List) is structurally modified in any way other than via the returned List. (Structural modifications are those that change the size of the List, or otherwise perturb it in such a fashion that iterations in progress may yield incorrect results.)

Specified by:
subList sample code for java.util.List.subList(int, int) definition code for java.util.List.subList(int, int) in interface List sample code for java.util.List definition code for java.util.List <E>
Parameters:
fromIndex - low endpoint (inclusive) of the subList.
toIndex - high endpoint (exclusive) of the subList.
Returns:
a view of the specified range within this List.
Throws:
IndexOutOfBoundsException sample code for java.lang.IndexOutOfBoundsException definition code for java.lang.IndexOutOfBoundsException - Illegal endpoint index value (fromIndex < 0 || toIndex > size || fromIndex > toIndex).