Package org.apache.xml.utils
Class IntVector
- java.lang.Object
-
- org.apache.xml.utils.IntVector
-
- All Implemented Interfaces:
java.lang.Cloneable
- Direct Known Subclasses:
IntStack
public class IntVector extends java.lang.Object implements java.lang.Cloneable
A very simple table that stores a list of int. This version is based on a "realloc" strategy -- a simle array is used, and when more storage is needed, a larger array is obtained and all existing data is recopied into it. As a result, read/write access to existing nodes is O(1) fast but appending may be O(N**2) slow. See also SuballocatedIntVector.
-
-
Constructor Summary
Constructors Constructor Description IntVector()
Default constructor.IntVector(int blocksize)
Construct a IntVector, using the given block size.IntVector(int blocksize, int increaseSize)
Construct a IntVector, using the given block size.IntVector(IntVector v)
Copy constructor for IntVector
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addElement(int value)
Append a int onto the vector.void
addElements(int numberOfElements)
Append several slots onto the vector, but do not set the values.void
addElements(int value, int numberOfElements)
Append several int values onto the vector.java.lang.Object
clone()
Returns clone of current IntVectorboolean
contains(int s)
Tell if the table contains the given node.int
elementAt(int i)
Get the nth element.int
indexOf(int elem)
Searches for the first occurence of the given argument, beginning the search at index, and testing for equality using the equals method.int
indexOf(int elem, int index)
Searches for the first occurence of the given argument, beginning the search at index, and testing for equality using the equals method.void
insertElementAt(int value, int at)
Inserts the specified node in this vector at the specified index.int
lastIndexOf(int elem)
Searches for the first occurence of the given argument, beginning the search at index, and testing for equality using the equals method.void
removeAllElements()
Inserts the specified node in this vector at the specified index.boolean
removeElement(int s)
Removes the first occurrence of the argument from this vector.void
removeElementAt(int i)
Deletes the component at the specified index.void
setElementAt(int value, int index)
Sets the component at the specified index of this vector to be the specified object.void
setSize(int sz)
Get the length of the list.int
size()
Get the length of the list.
-
-
-
Constructor Detail
-
IntVector
public IntVector()
Default constructor. Note that the default block size is very small, for small lists.
-
IntVector
public IntVector(int blocksize)
Construct a IntVector, using the given block size.- Parameters:
blocksize
- Size of block to allocate
-
IntVector
public IntVector(int blocksize, int increaseSize)
Construct a IntVector, using the given block size.- Parameters:
blocksize
- Size of block to allocate
-
IntVector
public IntVector(IntVector v)
Copy constructor for IntVector- Parameters:
v
- Existing IntVector to copy
-
-
Method Detail
-
size
public final int size()
Get the length of the list.- Returns:
- length of the list
-
setSize
public final void setSize(int sz)
Get the length of the list.
-
addElement
public final void addElement(int value)
Append a int onto the vector.- Parameters:
value
- Int to add to the list
-
addElements
public final void addElements(int value, int numberOfElements)
Append several int values onto the vector.- Parameters:
value
- Int to add to the list
-
addElements
public final void addElements(int numberOfElements)
Append several slots onto the vector, but do not set the values.- Parameters:
numberOfElements
- Int to add to the list
-
insertElementAt
public final void insertElementAt(int value, int at)
Inserts the specified node in this vector at the specified index. Each component in this vector with an index greater or equal to the specified index is shifted upward to have an index one greater than the value it had previously.- Parameters:
value
- Int to insertat
- Index of where to insert
-
removeAllElements
public final void removeAllElements()
Inserts the specified node in this vector at the specified index. Each component in this vector with an index greater or equal to the specified index is shifted upward to have an index one greater than the value it had previously.
-
removeElement
public final boolean removeElement(int s)
Removes the first occurrence of the argument from this vector. If the object is found in this vector, each component in the vector with an index greater or equal to the object's index is shifted downward to have an index one smaller than the value it had previously.- Parameters:
s
- Int to remove from array- Returns:
- True if the int was removed, false if it was not found
-
removeElementAt
public final void removeElementAt(int i)
Deletes the component at the specified index. Each component in this vector with an index greater or equal to the specified index is shifted downward to have an index one smaller than the value it had previously.- Parameters:
i
- index of where to remove and int
-
setElementAt
public final void setElementAt(int value, int index)
Sets the component at the specified index of this vector to be the specified object. 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:
value
- object to setindex
- Index of where to set the object
-
elementAt
public final int elementAt(int i)
Get the nth element.- Parameters:
i
- index of object to get- Returns:
- object at given index
-
contains
public final boolean contains(int s)
Tell if the table contains the given node.- Parameters:
s
- object to look for- Returns:
- true if the object is in the list
-
indexOf
public final int indexOf(int elem, int index)
Searches for the first occurence of the given argument, beginning the search at index, and testing for equality using the equals method.- Parameters:
elem
- object to look forindex
- Index of where to begin search- Returns:
- the index of the first occurrence of the object argument in this vector at position index or later in the vector; returns -1 if the object is not found.
-
indexOf
public final int indexOf(int elem)
Searches for the first occurence of the given argument, beginning the search at index, and testing for equality using the equals method.- Parameters:
elem
- object to look for- Returns:
- the index of the first occurrence of the object argument in this vector at position index or later in the vector; returns -1 if the object is not found.
-
lastIndexOf
public final int lastIndexOf(int elem)
Searches for the first occurence of the given argument, beginning the search at index, and testing for equality using the equals method.- Parameters:
elem
- Object to look for- Returns:
- the index of the first occurrence of the object argument in this vector at position index or later in the vector; returns -1 if the object is not found.
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
Returns clone of current IntVector- Returns:
- clone of current IntVector
- Throws:
java.lang.CloneNotSupportedException
-
-