Class List

java.lang.Object
org.exolab.adaptx.util.List
All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
ListStack

public class List extends Object implements Cloneable
This is my implementation of the JDK 1.2 List interface. I wrote this because I want people using 1.1.x to be able to use my apps, but I don't want to use a "synchronized" Vector. I also wanted to get a start in moving my source to JDK 1.2
I use the implementation of the hashCode method that is listed in the JDK 1.2 API, so this List can be compared correctly to actual JDK 1.2 lists using the equals method. Note: This is not a complete implementation yet, None of the methods that take a Collection have been imlplemented.
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new BasicSet with the default Size
    List(int size)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    add(int index, Object obj)
    Adds the specified Object to the list at the specified index
    boolean
    add(Object obj)
    Adds the specified Object to the list
    void
    Removes all elements from the list
     
    boolean
    Returns true if the specified element is contained in the list.
    boolean
    Compares the specified object with this list for equality.
    get(int index)
    Returns the element at the specified position in this list.
    int
    As defined by the JDK 1.2 API spec:
    Returns the hash code value for this list.
    int
    Returns the index of the first occurrence of the specified element, or -1 if the element is not contained in the List
    boolean
    Returns true if there are no elements in the List.
    int
    Returns the index of the last occurrence of the specified element, or -1 if the element is not contained in the List
    remove(int index)
    Removes the element at the specified index from the List
    boolean
    Removes the first occurrence of the specified element from the List
    set(int index, Object element)
    Replaces the element at the specified position in this list with the specified element.
    int
    Returns the number of elements in the List
    subList(int fromIndex, int toIndex)
    Returns a new List which contains elements from a given section of this list.
    Returns an array containing all of the elements in this list in proper sequence.
    toArray(Object[] dst)
    Returns an array containing all of the elements in this list in proper sequence.
    void
    Reduces the capacity of the internal buffer to the current size freeing up unused memory.

    Methods inherited from class java.lang.Object

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

    • List

      public List()
      Creates a new BasicSet with the default Size
    • List

      public List(int size)
  • Method Details

    • add

      public boolean add(Object obj)
      Adds the specified Object to the list
      Parameters:
      obj - the Object to add to the list
      Returns:
      true if the Object is added to the list
    • add

      public boolean add(int index, Object obj) throws IndexOutOfBoundsException
      Adds the specified Object to the list at the specified index
      Parameters:
      obj - the Object to add to the list
      Returns:
      true if the Object is added to the list
      Throws:
      IndexOutOfBoundsException
    • clear

      public void clear()
      Removes all elements from the list
    • clone

      public Object clone()
    • contains

      public boolean contains(Object obj)
      Returns true if the specified element is contained in the list. if the specfied element is null, then if the list contains a null value, true will be returned.
      Parameters:
      obj - the element to search the list for
      Returns:
      true if specified element is contained in the list
    • equals

      public boolean equals(Object obj)
      Compares the specified object with this list for equality. Returns true if and only if the specified Object is a list and all of its associated elements are equal to the elements of this list
      Overrides:
      equals in class Object
    • get

      public Object get(int index) throws IndexOutOfBoundsException
      Returns the element at the specified position in this list.
      Parameters:
      index - the position of the element to return
      Throws:
      IndexOutOfBoundsException
    • hashCode

      public int hashCode()
      As defined by the JDK 1.2 API spec:
      Returns the hash code value for this list. The hash code of a list is defined to be the result of the following calculation:
      hashCode = 1; Iterator i = list.iterator(); while (i.hasNext()) { Object obj = i.next(); hashCode = 31*hashCode + (obj==null ? 0 : obj.hashCode()); }
      Overrides:
      hashCode in class Object
      Returns:
      the hash code value for this list
    • indexOf

      public int indexOf(Object obj)
      Returns the index of the first occurrence of the specified element, or -1 if the element is not contained in the List
      Parameters:
      obj - the Object to get the index for
    • isEmpty

      public boolean isEmpty()
      Returns true if there are no elements in the List.
      Returns:
      true if there are no elements in the List.
    • lastIndexOf

      public int lastIndexOf(Object obj)
      Returns the index of the last occurrence of the specified element, or -1 if the element is not contained in the List
      Parameters:
      obj - the Object to get the last index for
    • remove

      public Object remove(int index)
      Removes the element at the specified index from the List
      Parameters:
      index - the position in the list tp remove the element from
      Returns:
      the Object that was removed from the list
    • remove

      public boolean remove(Object obj)
      Removes the first occurrence of the specified element from the List
      Parameters:
      obj - the Object to remove from the List
      Returns:
      true if the Object was removed from the list
    • trimToSize

      public void trimToSize()
      Reduces the capacity of the internal buffer to the current size freeing up unused memory.
    • set

      public Object set(int index, Object element) throws IndexOutOfBoundsException
      Replaces the element at the specified position in this list with the specified element.
      Parameters:
      index - the position in the list to place the element at
      element - the element to add to the list
      Throws:
      IndexOutOfBoundsException
    • size

      public int size()
      Returns the number of elements in the List
      Returns:
      the number of elements in the List
    • subList

      public List subList(int fromIndex, int toIndex)
      Returns a new List which contains elements from a given section of this list.
      Parameters:
      fromIndex - the start index (inclusize) of elements to add to the new list
      toIndex - the end index (exclusive)of the elements to add to the new list
      Returns:
      a new List which contains elements from a given section of this list.
      Throws:
      IndexOutOfBoundsException - for invalid index values
    • toArray

      public Object[] toArray()
      Returns an array containing all of the elements in this list in proper sequence.
      Returns:
      the array of elements of this List
    • toArray

      public Object[] toArray(Object[] dst)
      Returns an array containing all of the elements in this list in proper sequence.
      Returns:
      the array of elements of this List