Class ObjectVector

java.lang.Object
org.apache.xml.utils.ObjectVector
All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
ObjectStack

public class ObjectVector extends Object implements Cloneable
A very simple table that stores a list of objects. 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.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Default constructor.
    ObjectVector(int blocksize)
    Construct a IntVector, using the given block size.
    ObjectVector(int blocksize, int increaseSize)
    Construct a IntVector, using the given block size.
    Copy constructor for ObjectVector
  • Method Summary

    Modifier and Type
    Method
    Description
    final void
    Append an object onto the vector.
    final void
    addElements(int numberOfElements)
    Append several slots onto the vector, but do not set the values.
    final void
    addElements(Object value, int numberOfElements)
    Append several Object values onto the vector.
    Returns clone of current ObjectVector
    final boolean
    Tell if the table contains the given Object.
    final Object
    elementAt(int i)
    Get the nth element.
    final int
    Searches for the first occurence of the given argument, beginning the search at index, and testing for equality using the equals method.
    final int
    indexOf(Object 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.
    final void
    insertElementAt(Object value, int at)
    Inserts the specified object in this vector at the specified index.
    final int
    Searches for the first occurence of the given argument, beginning the search at index, and testing for equality using the equals method.
    final void
    Remove all elements objects from the list.
    final boolean
    Removes the first occurrence of the argument from this vector.
    final void
    Deletes the component at the specified index.
    final void
    setElementAt(Object value, int index)
    Sets the component at the specified index of this vector to be the specified object.
    final void
    setSize(int sz)
    Get the length of the list.
    final void
    setToSize(int size)
     
    final int
    Get the length of the list.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ObjectVector

      public ObjectVector()
      Default constructor. Note that the default block size is very small, for small lists.
    • ObjectVector

      public ObjectVector(int blocksize)
      Construct a IntVector, using the given block size.
      Parameters:
      blocksize - Size of block to allocate
    • ObjectVector

      public ObjectVector(int blocksize, int increaseSize)
      Construct a IntVector, using the given block size.
      Parameters:
      blocksize - Size of block to allocate
    • ObjectVector

      public ObjectVector(ObjectVector v)
      Copy constructor for ObjectVector
      Parameters:
      v - Existing ObjectVector to copy
  • Method Details

    • 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(Object value)
      Append an object onto the vector.
      Parameters:
      value - Object to add to the list
    • addElements

      public final void addElements(Object value, int numberOfElements)
      Append several Object values onto the vector.
      Parameters:
      value - Object 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 - number of slots to append
    • insertElementAt

      public final void insertElementAt(Object value, int at)
      Inserts the specified object 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 - Object to insert
      at - Index of where to insert
    • removeAllElements

      public final void removeAllElements()
      Remove all elements objects from the list.
    • removeElement

      public final boolean removeElement(Object 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 - Object to remove from array
      Returns:
      True if the object 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 an object
    • setElementAt

      public final void setElementAt(Object 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 set
      index - Index of where to set the object
    • elementAt

      public final Object elementAt(int i)
      Get the nth element.
      Parameters:
      i - index of object to get
      Returns:
      object at given index
    • contains

      public final boolean contains(Object s)
      Tell if the table contains the given Object.
      Parameters:
      s - object to look for
      Returns:
      true if the object is in the list
    • indexOf

      public final int indexOf(Object 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 for
      index - 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(Object 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(Object 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.
    • setToSize

      public final void setToSize(int size)
    • clone

      public Object clone() throws CloneNotSupportedException
      Returns clone of current ObjectVector
      Returns:
      clone of current ObjectVector
      Throws:
      CloneNotSupportedException