public class

Vector

extends AbstractList<E>
implements Serializable Cloneable List<E> RandomAccess
java.lang.Object
   ↳ java.util.AbstractCollection<E>
     ↳ java.util.AbstractList<E>
       ↳ java.util.Vector<E>
Known Direct Subclasses

Class Overview

Vector is an implementation of List, backed by an array and synchronized. All optional operations including adding, removing, and replacing elements are supported.

All elements are permitted, including null.

This class is equivalent to ArrayList with synchronized operations. This has a performance cost, and the synchronization is not necessarily meaningful to your application: synchronizing each call to get, for example, is not equivalent to synchronizing on the list and iterating over it (which is probably what you intended). If you do need very highly concurrent access, you should also consider CopyOnWriteArrayList.

Summary

Fields
protected int capacityIncrement How many elements should be added to the vector when it is detected that it needs to grow to accommodate extra entries.
protected int elementCount The number of elements or the size of the vector.
protected Object[] elementData The elements of the vector.
[Expand]
Inherited Fields
From class java.util.AbstractList
Public Constructors
Vector()
Constructs a new vector using the default capacity.
Vector(int capacity)
Constructs a new vector using the specified capacity.
Vector(int capacity, int capacityIncrement)
Constructs a new vector using the specified capacity and capacity increment.
Vector(Collection<? extends E> collection)
Constructs a new instance of Vector containing the elements in collection.
Public Methods
void add(int location, E object)
Adds the specified object into this vector at the specified location.
synchronized boolean add(E object)
Adds the specified object at the end of this vector.
synchronized boolean addAll(int location, Collection<? extends E> collection)
Inserts the objects in the specified collection at the specified location in this vector.
synchronized boolean addAll(Collection<? extends E> collection)
Adds the objects in the specified collection to the end of this vector.
synchronized void addElement(E object)
Adds the specified object at the end of this vector.
synchronized int capacity()
Returns the number of elements this vector can hold without growing.
void clear()
Removes all elements from this vector, leaving it empty.
synchronized Object clone()
Returns a new vector with the same elements, size, capacity and capacity increment as this vector.
boolean contains(Object object)
Searches this vector for the specified object.
synchronized boolean containsAll(Collection<?> collection)
Searches this vector for all objects in the specified collection.
synchronized void copyInto(Object[] elements)
Attempts to copy elements contained by this Vector into the corresponding elements of the supplied Object array.
synchronized E elementAt(int location)
Returns the element at the specified location in this vector.
Enumeration<E> elements()
Returns an enumeration on the elements of this vector.
synchronized void ensureCapacity(int minimumCapacity)
Ensures that this vector can hold the specified number of elements without growing.
synchronized boolean equals(Object object)
Compares the specified object to this vector and returns if they are equal.
synchronized E firstElement()
Returns the first element in this vector.
E get(int location)
Returns the element at the specified location in this vector.
synchronized int hashCode()
Returns an integer hash code for the receiver.
int indexOf(Object object)
Searches in this vector for the index of the specified object.
synchronized int indexOf(Object object, int location)
Searches in this vector for the index of the specified object.
synchronized void insertElementAt(E object, int location)
Inserts the specified object into this vector at the specified location.
synchronized boolean isEmpty()
Returns if this vector has no elements, a size of zero.
synchronized E lastElement()
Returns the last element in this vector.
synchronized int lastIndexOf(Object object, int location)
Searches in this vector for the index of the specified object.
synchronized int lastIndexOf(Object object)
Searches in this vector for the index of the specified object.
synchronized E remove(int location)
Removes the object at the specified location from this vector.
boolean remove(Object object)
Removes the first occurrence, starting at the beginning and moving towards the end, of the specified object from this vector.
synchronized boolean removeAll(Collection<?> collection)
Removes all occurrences in this vector of each object in the specified Collection.
synchronized void removeAllElements()
Removes all elements from this vector, leaving the size zero and the capacity unchanged.
synchronized boolean removeElement(Object object)
Removes the first occurrence, starting at the beginning and moving towards the end, of the specified object from this vector.
synchronized void removeElementAt(int location)
Removes the element found at index position location from this Vector.
synchronized boolean retainAll(Collection<?> collection)
Removes all objects from this vector that are not contained in the specified collection.
synchronized E set(int location, E object)
Replaces the element at the specified location in this vector with the specified object.
synchronized void setElementAt(E object, int location)
Replaces the element at the specified location in this vector with the specified object.
synchronized void setSize(int length)
Sets the size of this vector to the specified size.
synchronized int size()
Returns the number of elements in this vector.
synchronized List<E> subList(int start, int end)
Returns a List of the specified portion of this vector from the start index to one less than the end index.
synchronized <T> T[] toArray(T[] contents)
Returns an array containing all elements contained in this vector.
synchronized Object[] toArray()
Returns a new array containing all elements contained in this vector.
synchronized String toString()
Returns the string representation of this vector.
synchronized void trimToSize()
Sets the capacity of this vector to be the same as the size.
Protected Methods
void removeRange(int start, int end)
Removes the objects in the specified range from the start to the, but not including, end index.
[Expand]
Inherited Methods
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.List

Fields

protected int capacityIncrement

Since: API Level 1

How many elements should be added to the vector when it is detected that it needs to grow to accommodate extra entries. If this value is zero or negative the size will be doubled if an increase is needed.

protected int elementCount

Since: API Level 1

The number of elements or the size of the vector.

protected Object[] elementData

Since: API Level 1

The elements of the vector.

Public Constructors

public Vector ()

Since: API Level 1

Constructs a new vector using the default capacity.

public Vector (int capacity)

Since: API Level 1

Constructs a new vector using the specified capacity.

Parameters
capacity the initial capacity of the new vector.
Throws
IllegalArgumentException if capacity is negative.

public Vector (int capacity, int capacityIncrement)

Since: API Level 1

Constructs a new vector using the specified capacity and capacity increment.

Parameters
capacity the initial capacity of the new vector.
capacityIncrement the amount to increase the capacity when this vector is full.
Throws
IllegalArgumentException if capacity is negative.

public Vector (Collection<? extends E> collection)

Since: API Level 1

Constructs a new instance of Vector containing the elements in collection. The order of the elements in the new Vector is dependent on the iteration order of the seed collection.

Parameters
collection the collection of elements to add.

Public Methods

public void add (int location, E object)

Since: API Level 1

Adds the specified object into this vector at the specified location. The object is inserted before any element with the same or a higher index increasing their index by 1. If the location is equal to the size of this vector, the object is added at the end.

Parameters
location the index at which to insert the element.
object the object to insert in this vector.
Throws
ArrayIndexOutOfBoundsException if location < 0 || location > size().

public synchronized boolean add (E object)

Since: API Level 1

Adds the specified object at the end of this vector.

Parameters
object the object to add to the vector.
Returns
  • true

public synchronized boolean addAll (int location, Collection<? extends E> collection)

Since: API Level 1

Inserts the objects in the specified collection at the specified location in this vector. The objects are inserted in the order in which they are returned from the Collection iterator. The elements with an index equal or higher than location have their index increased by the size of the added collection.

Parameters
location the location to insert the objects.
collection the collection of objects.
Returns
  • true if this vector is modified, false otherwise.
Throws
ArrayIndexOutOfBoundsException if location < 0 or location > size().

public synchronized boolean addAll (Collection<? extends E> collection)

Since: API Level 1

Adds the objects in the specified collection to the end of this vector.

Parameters
collection the collection of objects.
Returns
  • true if this vector is modified, false otherwise.

public synchronized void addElement (E object)

Since: API Level 1

Adds the specified object at the end of this vector.

Parameters
object the object to add to the vector.

public synchronized int capacity ()

Since: API Level 1

Returns the number of elements this vector can hold without growing.

Returns
  • the capacity of this vector.

public void clear ()

Since: API Level 1

Removes all elements from this vector, leaving it empty.

See Also

public synchronized Object clone ()

Since: API Level 1

Returns a new vector with the same elements, size, capacity and capacity increment as this vector.

Returns
  • a shallow copy of this vector.
See Also

public boolean contains (Object object)

Since: API Level 1

Searches this vector for the specified object.

Parameters
object the object to look for in this vector.
Returns
  • true if object is an element of this vector, false otherwise.

public synchronized boolean containsAll (Collection<?> collection)

Since: API Level 1

Searches this vector for all objects in the specified collection.

Parameters
collection the collection of objects.
Returns
  • true if all objects in the specified collection are elements of this vector, false otherwise.

public synchronized void copyInto (Object[] elements)

Since: API Level 1

Attempts to copy elements contained by this Vector into the corresponding elements of the supplied Object array.

Parameters
elements the Object array into which the elements of this vector are copied.
Throws
IndexOutOfBoundsException if elements is not big enough.
See Also

public synchronized E elementAt (int location)

Since: API Level 1

Returns the element at the specified location in this vector.

Parameters
location the index of the element to return in this vector.
Returns
  • the element at the specified location.
Throws
ArrayIndexOutOfBoundsException if location < 0 || location >= size().
See Also

public Enumeration<E> elements ()

Since: API Level 1

Returns an enumeration on the elements of this vector. The results of the enumeration may be affected if the contents of this vector is modified.

Returns
  • an enumeration of the elements of this vector.

public synchronized void ensureCapacity (int minimumCapacity)

Since: API Level 1

Ensures that this vector can hold the specified number of elements without growing.

Parameters
minimumCapacity the minimum number of elements that this vector will hold before growing.
See Also

public synchronized boolean equals (Object object)

Since: API Level 1

Compares the specified object to this vector and returns if they are equal. The object must be a List which contains the same objects in the same order.

Parameters
object the object to compare with this object
Returns
  • true if the specified object is equal to this vector, false otherwise.
See Also

public synchronized E firstElement ()

Since: API Level 1

Returns the first element in this vector.

Returns
  • the element at the first position.
Throws
NoSuchElementException if this vector is empty.

public E get (int location)

Since: API Level 1

Returns the element at the specified location in this vector.

Parameters
location the index of the element to return in this vector.
Returns
  • the element at the specified location.
Throws
ArrayIndexOutOfBoundsException if location < 0 || location >= size().
See Also

public synchronized int hashCode ()

Since: API Level 1

Returns an integer hash code for the receiver. Objects which are equal return the same value for this method.

Returns
  • the receiver's hash.
See Also

public int indexOf (Object object)

Since: API Level 1

Searches in this vector for the index of the specified object. The search for the object starts at the beginning and moves towards the end of this vector.

Parameters
object the object to find in this vector.
Returns
  • the index in this vector of the specified element, -1 if the element isn't found.

public synchronized int indexOf (Object object, int location)

Since: API Level 1

Searches in this vector for the index of the specified object. The search for the object starts at the specified location and moves towards the end of this vector.

Parameters
object the object to find in this vector.
location the index at which to start searching.
Returns
  • the index in this vector of the specified element, -1 if the element isn't found.
Throws
ArrayIndexOutOfBoundsException if location < 0.

public synchronized void insertElementAt (E object, int location)

Since: API Level 1

Inserts the specified object into this vector at the specified location. This object is inserted before any previous element at the specified location. All elements with an index equal or greater than location have their index increased by 1. If the location is equal to the size of this vector, the object is added at the end.

Parameters
object the object to insert in this vector.
location the index at which to insert the element.
Throws
ArrayIndexOutOfBoundsException if location < 0 || location > size().

public synchronized boolean isEmpty ()

Since: API Level 1

Returns if this vector has no elements, a size of zero.

Returns
  • true if this vector has no elements, false otherwise.
See Also

public synchronized E lastElement ()

Since: API Level 1

Returns the last element in this vector.

Returns
  • the element at the last position.
Throws
NoSuchElementException if this vector is empty.

public synchronized int lastIndexOf (Object object, int location)

Since: API Level 1

Searches in this vector for the index of the specified object. The search for the object starts at the specified location and moves towards the start of this vector.

Parameters
object the object to find in this vector.
location the index at which to start searching.
Returns
  • the index in this vector of the specified element, -1 if the element isn't found.
Throws
ArrayIndexOutOfBoundsException if location >= size().

public synchronized int lastIndexOf (Object object)

Since: API Level 1

Searches in this vector for the index of the specified object. The search for the object starts at the end and moves towards the start of this vector.

Parameters
object the object to find in this vector.
Returns
  • the index in this vector of the specified element, -1 if the element isn't found.

public synchronized E remove (int location)

Since: API Level 1

Removes the object at the specified location from this vector. All elements with an index bigger than location have their index decreased by 1.

Parameters
location the index of the object to remove.
Returns
  • the removed object.
Throws
IndexOutOfBoundsException if location < 0 || location >= size().

public boolean remove (Object object)

Since: API Level 1

Removes the first occurrence, starting at the beginning and moving towards the end, of the specified object from this vector. All elements with an index bigger than the element that gets removed have their index decreased by 1.

Parameters
object the object to remove from this vector.
Returns
  • true if the specified object was found, false otherwise.

public synchronized boolean removeAll (Collection<?> collection)

Since: API Level 1

Removes all occurrences in this vector of each object in the specified Collection.

Parameters
collection the collection of objects to remove.
Returns
  • true if this vector is modified, false otherwise.

public synchronized void removeAllElements ()

Since: API Level 1

Removes all elements from this vector, leaving the size zero and the capacity unchanged.

See Also

public synchronized boolean removeElement (Object object)

Since: API Level 1

Removes the first occurrence, starting at the beginning and moving towards the end, of the specified object from this vector. All elements with an index bigger than the element that gets removed have their index decreased by 1.

Parameters
object the object to remove from this vector.
Returns
  • true if the specified object was found, false otherwise.

public synchronized void removeElementAt (int location)

Since: API Level 1

Removes the element found at index position location from this Vector. All elements with an index bigger than location have their index decreased by 1.

Parameters
location the index of the element to remove.
Throws
ArrayIndexOutOfBoundsException if location < 0 || location >= size().

public synchronized boolean retainAll (Collection<?> collection)

Since: API Level 1

Removes all objects from this vector that are not contained in the specified collection.

Parameters
collection the collection of objects to retain.
Returns
  • true if this vector is modified, false otherwise.
See Also

public synchronized E set (int location, E object)

Since: API Level 1

Replaces the element at the specified location in this vector with the specified object.

Parameters
location the index at which to put the specified object.
object the object to add to this vector.
Returns
  • the previous element at the location.
Throws
ArrayIndexOutOfBoundsException if location < 0 || location >= size().
See Also

public synchronized void setElementAt (E object, int location)

Since: API Level 1

Replaces the element at the specified location in this vector with the specified object.

Parameters
object the object to add to this vector.
location the index at which to put the specified object.
Throws
ArrayIndexOutOfBoundsException if location < 0 || location >= size().
See Also

public synchronized void setSize (int length)

Since: API Level 1

Sets the size of this vector to the specified size. If there are more than length elements in this vector, the elements at end are lost. If there are less than length elements in the vector, the additional elements contain null.

Parameters
length the new size of this vector.
See Also

public synchronized int size ()

Since: API Level 1

Returns the number of elements in this vector.

Returns
  • the number of elements in this vector.

public synchronized List<E> subList (int start, int end)

Since: API Level 1

Returns a List of the specified portion of this vector from the start index to one less than the end index. The returned List is backed by this vector so changes to one are reflected by the other.

Parameters
start the index at which to start the sublist.
end the index one past the end of the sublist.
Returns
  • a List of a portion of this vector.
Throws
IndexOutOfBoundsException if start < 0 or end > size().
IllegalArgumentException if start > end.

public synchronized T[] toArray (T[] contents)

Since: API Level 1

Returns an array containing all elements contained in this vector. 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 vector, the array element following the collection elements is set to null.

Parameters
contents the array to fill.
Returns
  • an array of the elements from this vector.
Throws
ArrayStoreException if the type of an element in this vector cannot be stored in the type of the specified array.

public synchronized Object[] toArray ()

Since: API Level 1

Returns a new array containing all elements contained in this vector.

Returns
  • an array of the elements from this vector.

public synchronized String toString ()

Since: API Level 1

Returns the string representation of this vector.

Returns
  • the string representation of this vector.
See Also

public synchronized void trimToSize ()

Since: API Level 1

Sets the capacity of this vector to be the same as the size.

Protected Methods

protected void removeRange (int start, int end)

Since: API Level 1

Removes the objects in the specified range from the start to the, but not including, end index. All elements with an index bigger than or equal to end have their index decreased by end - start.

Parameters
start the index at which to start removing.
end the index one past the end of the range to remove.
Throws
IndexOutOfBoundsException if start < 0, start > end or end > size().