Known Direct Subclasses
Vector class implements a growable array of
objects. Like an array, it contains components that can be
accessed using an integer index. However, the size of a
Vector can grow or shrink as needed to accommodate
adding and removing items after the
Vector has been created.
Each vector tries to optimize storage management by maintaining a
capacity and a
capacity is always at least as large as the vector
size; it is usually larger because as components are added to the
vector, the vector's storage increases in chunks the size of
capacityIncrement. An application can increase the
capacity of a vector before inserting a large number of
components; this reduces the amount of incremental reallocation.
The iterators returned by this class's
listIterator methods are fail-fast:
if the vector is structurally modified at any time after the iterator is
created, in any way except through the iterator's own
add methods, the iterator will throw a
ConcurrentModificationException. Thus, in the face of
concurrent modification, the iterator fails quickly and cleanly, rather
than risking arbitrary, non-deterministic behavior at an undetermined
time in the future. The
Enumerations returned by
elements method are not fail-fast.
Note that the fail-fast behavior of an iterator cannot be guaranteed
as it is, generally speaking, impossible to make any hard guarantees in the
presence of unsynchronized concurrent modification. Fail-fast iterators
ConcurrentModificationException on a best-effort basis.
Therefore, it would be wrong to write a program that depended on this
exception for its correctness: the fail-fast behavior of iterators
should be used only to detect bugs.
As of the Java 2 platform v1.2, this class was retrofitted to
List interface, making it a member of the
Java Collections Framework. Unlike the new collection
Vector is synchronized. If a thread-safe
implementation is not needed, it is recommended to use
ArrayList in place of
|protected int||capacityIncrement||The amount by which the capacity of the vector is automatically incremented when its size becomes greater than its capacity.|
|protected int||elementCount||The number of valid components in this
|protected Object||elementData||The array buffer into which the components of the vector are stored.|
Inherited Field Summary
Public Constructor Summary
Vector(int initialCapacity, int capacityIncrement)
Constructs an empty vector with the specified initial capacity and capacity increment.
Constructs an empty vector with the specified initial capacity and with its capacity increment equal to zero.
Constructs an empty vector so that its internal data array has size
Public Method Summary
add(int index, E element)
Inserts the specified element at the specified position in this Vector.
Appends the specified element to the end of this Vector.
Adds the specified component to the end of this vector, increasing its size by one.
Returns the current capacity of this vector.
Removes all of the elements from this Vector.
Returns a clone of this vector.
Returns the component at the specified index.
Returns an enumeration of the components of this vector.
Increases the capacity of this vector, if necessary, to ensure that it can hold at least the number of components specified by the minimum capacity argument.
Returns the first component (the item at index
Returns the element at the specified position in this Vector.
Returns the hash code value for this Vector.
insertElementAt(E obj, int index)
Inserts the specified object as a component in this vector at the specified
Tests if this vector has no components.
Returns an iterator over the elements in this list in proper sequence.
Returns the last component of the vector.