public class ArrayList<E>

  1. Object
  2. AbstractCollection<E>
  3. AbstractList<E>
  4. ArrayList

ImplementsCollection<E>, Iterable<E>, List<E>, RandomAccess

ArrayList is an implementation of List, backed by an array. All optional operations adding, removing, and replacing are supported. The elements can be any objects.

Constructors

public ArrayList()Constructs a new instance of ArrayList with ten capacity.
public ArrayList(int capacity)Constructs a new instance of ArrayList with the specified capacity.
public ArrayList(Collection<? extends E> collection)Constructs a new instance of ArrayList containing the elements of the specified collection.

Methods

public void add(int location, E object)Inserts the specified object into this ArrayList at the specified location.
public boolean add(E object)Adds the specified object at the end of this ArrayList.
public boolean addAll(int location, Collection<? extends E> collection)Inserts the objects in the specified collection at the specified location in this List.
public boolean addAll(Collection<? extends E> collection)Adds the objects in the specified collection to this ArrayList.
public void clear()Removes all elements from this ArrayList, leaving it empty.
public boolean contains(Object object)Searches this ArrayList for the specified object.
public void ensureCapacity(int minimumCapacity)Ensures that after this operation the ArrayList can hold the specified number of elements without further growing.
public E get(int location)Returns the element at the specified location in this list.
public int indexOf(Object object)Searches this list for the specified object and returns the index of the first occurrence.
public boolean isEmpty()Returns if this Collection contains no elements.
public int lastIndexOf(Object object)Searches this list for the specified object and returns the index of the last occurrence.
public E remove(int location)Removes the object at the specified location from this list.
public boolean remove(Object object)Removes one instance of the specified object from this Collection if one is contained (optional).
protected void removeRange(int start, int end)Removes the objects in the specified range from the start to the end, but not including the end index.
public E set(int location, E object)Replaces the element at the specified location in this ArrayList with the specified object.
public int size()Returns the number of elements in this ArrayList.
public Object[] toArray()Returns a new array containing all elements contained in this ArrayList.
public <T> T[] toArray(T[] contents)Returns an array containing all elements contained in this ArrayList.
public void trimToSize()Sets the capacity of this ArrayList to be the same as the current size.

Inherited fields

Inherited methods

Constructor details

ArrayList

public ArrayList()
Constructs a new instance of ArrayList with ten capacity.

ArrayList

public ArrayList(int capacity)
Constructs a new instance of ArrayList with the specified capacity.

Parameters

capacity int
the initial capacity of this ArrayList.

ArrayList

public ArrayList(Collection<? extends E> collection)
Constructs a new instance of ArrayList containing the elements of the specified collection. The initial size of the ArrayList will be 10% larger than the size of the specified collection.

Parameters

collection Collection<? extends E>
the collection of elements to add.

Method details

add

public void add(int location, E object)
Inserts the specified object into this ArrayList 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 ArrayList, the object is added at the end.

Parameters

location int
the index at which to insert the object.
object E
the object to add.

Throws

IndexOutOfBoundsException
when location size()
UnsupportedOperationException
if adding to this List is not supported.
ClassCastException
if the class of the object is inappropriate for this List
IllegalArgumentException
if the object cannot be added to this List

add

public boolean add(E object)
Adds the specified object at the end of this ArrayList.

Parameters

object E
the object to add.

Returns

always true

addAll

public boolean addAll(int location, Collection<? extends E> collection)
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.

Parameters

location int
the index at which to insert.
collection Collection<? extends E>
the collection of objects.

Returns

true if this ArrayList is modified, false otherwise.

Throws

IndexOutOfBoundsException
when location size()

addAll

public boolean addAll(Collection<? extends E> collection)
Adds the objects in the specified collection to this ArrayList.

Parameters

collection Collection<? extends E>
the collection of objects.

Returns

true if this ArrayList is modified, false otherwise.

clear

public void clear()
Removes all elements from this ArrayList, leaving it empty.

Throws

UnsupportedOperationException
if removing from this list is not supported.

contains

public boolean contains(Object object)
Searches this ArrayList for the specified object.

Parameters

object Object
the object to search for.

Returns

true if object is an element of this ArrayList, false otherwise

ensureCapacity

public void ensureCapacity(int minimumCapacity)
Ensures that after this operation the ArrayList can hold the specified number of elements without further growing.

Parameters

minimumCapacity int
the minimum capacity asked for.

get

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

Parameters

location int
the index of the element to return.

Returns

the element at the specified index.

Throws

IndexOutOfBoundsException
if location = size()

indexOf

public int indexOf(Object object)
Searches this list for the specified object and returns the index of the first occurrence.

Parameters

object Object
the object to search for.

Returns

the index of the first occurrence of the object, or -1 if it was not found.

isEmpty

public boolean isEmpty()
Returns if this Collection contains no elements. This implementation tests, whether size returns 0.

Returns

true if this Collection has no elements, false otherwise.

See also

lastIndexOf

public int lastIndexOf(Object object)
Searches this list for the specified object and returns the index of the last occurrence.

Parameters

object Object
the object to search for.

Returns

the index of the last occurrence of the object, or -1 if the object was not found.

remove

public E remove(int location)
Removes the object at the specified location from this list.

Parameters

location int
the index of the object to remove.

Returns

the removed object.

Throws

IndexOutOfBoundsException
when location = size()

remove

public boolean remove(Object object)
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.

Parameters

object Object
the object to remove.

Returns

true if this Collection is modified, false otherwise.

Throws

UnsupportedOperationException
if removing from this Collection is not supported.
ClassCastException
if the object passed is not of the correct type.
NullPointerException
if object is null and this Collection doesn’t support null elements.

removeRange

protected void removeRange(int start, int end)
Removes the objects in the specified range from the start to the end, but not including the end index.

Parameters

start int
the index at which to start removing.
end int
the index one after the end of the range to remove.

Throws

IndexOutOfBoundsException
when start end or end > size()
UnsupportedOperationException
if removing from this list is not supported.

set

public E set(int location, E object)
Replaces the element at the specified location in this ArrayList with the specified object.

Parameters

location int
the index at which to put the specified object.
object E
the object to add.

Returns

the previous element at the index.

Throws

IndexOutOfBoundsException
when location = size()

size

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

Returns

the number of elements in this ArrayList.

toArray

public Object[] toArray()
Returns a new array containing all elements contained in this ArrayList.

Returns

an array of the elements from this ArrayList

toArray

public <T> T[] toArray(T[] contents)
Returns an array containing all elements contained in this ArrayList. 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 ArrayList, the array element following the collection elements is set to null.

Parameters

contents T[]
the array.

Returns

an array of the elements from this ArrayList.

Throws

ArrayStoreException
when the type of an element in this ArrayList cannot be stored in the type of the specified array.

trimToSize

public void trimToSize()
Sets the capacity of this ArrayList to be the same as the current size.

See also