Class IntVector
- All Implemented Interfaces:
AsciiSerializable
,FieldAccessor
,Serializable
,Cloneable
IntVector
class implements a growable array of int
primatives. Like an array, it contains components that can be accessed using
an integer index. However, the size of a IntVector
can grow or
shrink as needed to accommodate adding and removing items after the
IntVector
has been created.
Each vector tries to optimize storage management by maintaining a
capacity
and a _capacityIncrement
. The 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.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected int
The amount by which the capacity of the vector is automatically incremented when its size becomes greater than its capacity.protected int
The number of valid components in the vector.protected int[]
The array buffer into which the components of the vector are stored. -
Constructor Summary
ConstructorsConstructorDescriptionConstructs an empty vector.IntVector
(int initialCapacity) Constructs an empty vector with the specified initial capacity.IntVector
(int[] array) Constructs a new IntVector with the capacity set to the argument array length then copys the argument array data into the element data array.IntVector
(int initialCapacity, int capacityIncrement) Constructs an empty vector with the specified initial capacity and capacity increment. -
Method Summary
Modifier and TypeMethodDescriptionvoid
add
(int obj) Adds the specified component to the end of this vector, increasing its size by one.boolean
addAll
(int[] array) Appends the ints in the argument array to this int vector.boolean
Appends the ints in the argument array to this int vector.final void
addElement
(int obj) Adds the specified component to the end of this vector, increasing its size by one.final int
capacity()
Returns the current capacity of this vector.void
clear()
Removes all components from this vector and sets its size to zero.clone()
Returns a clone of this vector.final boolean
contains
(int elem) Tests if the specified int is a component in this vector.final void
copyInto
(int[] anArray) Copies the components of this vector into the specified array.final void
Copies the components of this vector into the specified array.final int
elementAt
(int index) Returns the component at the specified index.long
Returns the total value of all the elementsfinal void
ensureCapacity
(int minCapacity) 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.final int
Returns the first component of this vector.int
get
(int index) Returns the component at the specified index.getFieldObject
(Field fld) Gets the FieldObject attribute of the IntVector objectfinal int
indexOf
(int elem) Searches for the first occurence of the given argument, testing for equality using theequals
method.final int
indexOf
(int elem, int index) Searches for the first occurence of the given argument, beginning the search atindex
, and testing for equality using theequals
method.final void
insertElementAt
(int obj, int index) Inserts the specified int as a component in this vector at the specifiedindex
.final boolean
isEmpty()
Tests if this vector has no components.final int
Returns the last component of the vector.final int
lastIndexOf
(int elem) Returns the index of the last occurrence of the specified int in this vector.final int
lastIndexOf
(int elem, int index) Searches backwards for the specified int, starting from the specified index, and returns an index to it.boolean
remove
(int obj) Removes the first occurrence of the argument from this vector.int
removeAll
(int[] objs) Removes the first occurrence of the argument from this vector.final void
Removes all components from this vector and sets its size to zero.final boolean
removeElement
(int obj) Removes the first occurrence of the argument from this vector.final void
removeElementAt
(int index) Deletes the component at the specified index.final void
setElementAt
(int obj, int index) Sets the component at the specifiedindex
of this vector to be the specified int.boolean
setFieldObject
(Field fld, Object fobj) Sets the FieldObject attribute of the IntVector objectfinal void
setSize
(int newSize) Sets the size of this vector.final int
size()
Returns the number of components in this vector.int[]
toArray()
Returns the int data in a new array.final String
toString()
Returns a string representation of this vector.final void
Trims the capacity of this vector to be the vector's current size.
-
Field Details
-
_elementData
protected int[] _elementDataThe array buffer into which the components of the vector are stored. The capacity of the vector is the length of this array buffer. -
_elementCount
protected int _elementCountThe number of valid components in the vector. -
_capacityIncrement
protected int _capacityIncrementThe amount by which the capacity of the vector is automatically incremented when its size becomes greater than its capacity. If the capacity increment is0
, the capacity of the vector is doubled each time it needs to grow.
-
-
Constructor Details
-
IntVector
public IntVector(int initialCapacity, int capacityIncrement) Constructs an empty vector with the specified initial capacity and capacity increment.- Parameters:
initialCapacity
- the initial capacity of the vector.capacityIncrement
- the amount by which the capacity is increased when the vector overflows.
-
IntVector
public IntVector(int initialCapacity) Constructs an empty vector with the specified initial capacity.- Parameters:
initialCapacity
- the initial capacity of the vector.
-
IntVector
public IntVector()Constructs an empty vector. -
IntVector
public IntVector(int[] array) Constructs a new IntVector with the capacity set to the argument array length then copys the argument array data into the element data array.- Parameters:
array
-
-
-
Method Details
-
addAll
public boolean addAll(int[] array) Appends the ints in the argument array to this int vector. Returns a boolean if the number of ints added is > 0. -
addAll
Appends the ints in the argument array to this int vector. Returns a boolean if the number of ints added is > 0. -
toArray
public int[] toArray()Returns the int data in a new array.- Returns:
-
copyInto
public final void copyInto(int[] anArray) Copies the components of this vector into the specified array. The array must be big enough to hold all the ints in this vector.- Parameters:
anArray
- the array into which the components get copied.
-
copyInto
Copies the components of this vector into the specified array. The array must be big enough to hold all the ints in this vector.- Parameters:
anArray
- the Integer array into which the components get copied.
-
trimToSize
public final void trimToSize()Trims the capacity of this vector to be the vector's current size. An application can use this operation to minimize the storage of a vector.- Since:
- JDK1.0
-
ensureCapacity
public final void ensureCapacity(int minCapacity) 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.- Parameters:
minCapacity
- the desired minimum capacity.- Since:
- JDK1.0
-
setSize
public final void setSize(int newSize) Sets the size of this vector. If the new size is greater than the current size, newRMAConst.UNDEF_INT
items are added to the end of the vector. If the new size is less than the current size, all components at indexnewSize
and greater are discarded.- Parameters:
newSize
- the new size of this vector.- Since:
- JDK1.0
-
capacity
public final int capacity()Returns the current capacity of this vector.- Returns:
- the current capacity of this vector.
- Since:
- JDK1.0
-
size
public final int size()Returns the number of components in this vector.- Returns:
- the number of components in this vector.
- Since:
- JDK1.0
-
isEmpty
public final boolean isEmpty()Tests if this vector has no components.- Returns:
true
if this vector has no components;false
otherwise.- Since:
- JDK1.0
-
contains
public final boolean contains(int elem) Tests if the specified int is a component in this vector.- Parameters:
elem
- an int.- Returns:
true
if the specified int is a component in this vector;false
otherwise.- Since:
- JDK1.0
-
indexOf
public final int indexOf(int elem) Searches for the first occurence of the given argument, testing for equality using theequals
method.- Parameters:
elem
- an int.- Returns:
- the index of the first occurrence of the argument in this
vector; returns
-1
if the int is not found. - Since:
- JDK1.0
- See Also:
-
indexOf
public final int indexOf(int elem, int index) Searches for the first occurence of the given argument, beginning the search atindex
, and testing for equality using theequals
method.- Parameters:
elem
- an int.index
- the index to start searching from.- Returns:
- the index of the first occurrence of the int argument in this
vector at position
index
or later in the vector; returns-1
if the int is not found. - Since:
- JDK1.0
- See Also:
-
lastIndexOf
public final int lastIndexOf(int elem) Returns the index of the last occurrence of the specified int in this vector.- Parameters:
elem
- the desired component.- Returns:
- the index of the last occurrence of the specified int in this
vector; returns
-1
if the int is not found. - Since:
- JDK1.0
-
lastIndexOf
public final int lastIndexOf(int elem, int index) Searches backwards for the specified int, starting from the specified index, and returns an index to it.- Parameters:
elem
- the desired component.index
- the index to start searching from.- Returns:
- the index of the last occurrence of the specified int in this
vector at position less than
index
in the vector;-1
if the int is not found. - Since:
- JDK1.0
-
get
public int get(int index) Returns the component at the specified index. wrapper for elementAt(int);- Parameters:
index
- Description- Returns:
- Description
-
elementAt
public final int elementAt(int index) Returns the component at the specified index.- Parameters:
index
- an index into this vector.- Returns:
- the component at the specified index.
- Since:
- JDK1.0
-
firstElement
public final int firstElement()Returns the first component of this vector.- Returns:
- the first component of this vector.
- Since:
- JDK1.0
-
lastElement
public final int lastElement()Returns the last component of the vector.- Returns:
- the last component of the vector, i.e.,
the component at index
size() - 1
. - Since:
- JDK1.0
-
setElementAt
public final void setElementAt(int obj, int index) Sets the component at the specifiedindex
of this vector to be the specified int. The previous component at that position is discarded.The index must be a value greater than or equal to
0
and less than the current size of the vector.- Parameters:
obj
- what the component is to be set to.index
- the specified index.- Since:
- JDK1.0
- See Also:
-
removeElementAt
public final void removeElementAt(int index) Deletes the component at the specified index. Each component in this vector with an index greater or equal to the specifiedindex
is shifted downward to have an index one smaller than the value it had previously.The index must be a value greater than or equal to
0
and less than the current size of the vector.- Parameters:
index
- the index of the int to remove.- Since:
- JDK1.0
- See Also:
-
insertElementAt
public final void insertElementAt(int obj, int index) Inserts the specified int as a component in this vector at the specifiedindex
. Each component in this vector with an index greater or equal to the specifiedindex
is shifted upward to have an index one greater than the value it had previously.The index must be a value greater than or equal to
0
and less than or equal to the current size of the vector.- Parameters:
obj
- the component to insert.index
- where to insert the new component.- Since:
- JDK1.0
- See Also:
-
add
public void add(int obj) Adds the specified component to the end of this vector, increasing its size by one. The capacity of this vector is increased if its size becomes greater than its capacity. wrapper for addElement(int);- Parameters:
obj
- Description
-
addElement
public final void addElement(int obj) Adds the specified component to the end of this vector, increasing its size by one. The capacity of this vector is increased if its size becomes greater than its capacity.- Parameters:
obj
- the component to be added.- Since:
- JDK1.0
-
remove
public boolean remove(int obj) Removes the first occurrence of the argument from this vector. If the int is found in this vector, each component in the vector with an index greater or equal to the int's index is shifted downward to have an index one smaller than the value it had previously. wrapper for removeElement(int)- Parameters:
obj
- Description- Returns:
- Description
-
removeAll
public int removeAll(int[] objs) Removes the first occurrence of the argument from this vector. If the int is found in this vector, each component in the vector with an index greater or equal to the int's index is shifted downward to have an index one smaller than the value it had previously.- Parameters:
objs
- Description- Returns:
- the number of items removed
-
removeElement
public final boolean removeElement(int obj) Removes the first occurrence of the argument from this vector. If the int is found in this vector, each component in the vector with an index greater or equal to the int's index is shifted downward to have an index one smaller than the value it had previously.- Parameters:
obj
- the component to be removed.- Returns:
true
if the argument was a component of this vector;false
otherwise.- Since:
- JDK1.0
-
clear
public void clear()Removes all components from this vector and sets its size to zero. wrapper for removeAllElements(); -
removeAllElements
public final void removeAllElements()Removes all components from this vector and sets its size to zero.- Since:
- JDK1.0
-
clone
Returns a clone of this vector. -
elementTotal
public long elementTotal()Returns the total value of all the elements -
toString
Returns a string representation of this vector. -
getFieldObject
Gets the FieldObject attribute of the IntVector object- Specified by:
getFieldObject
in interfaceFieldAccessor
- Parameters:
fld
- Description- Returns:
- The FieldObject value
-
setFieldObject
Sets the FieldObject attribute of the IntVector object- Specified by:
setFieldObject
in interfaceFieldAccessor
- Parameters:
fld
- The new FieldObject valuefobj
- The new FieldObject value- Returns:
- Description
-