Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.collections.primitives
Class RandomAccessDoubleList

    java.lang.Object
      org.apache.commons.collections.primitives.AbstractDoubleCollection
          org.apache.commons.collections.primitives.RandomAccessDoubleList

All Implemented Interfaces:
  DoubleCollection, DoubleList

Direct Known Subclasses:
  ArrayDoubleList, RandomAccessDoubleList.RandomAccessDoubleSubList

public abstract class RandomAccessDoubleList
extends AbstractDoubleCollection
implements DoubleList

Abstract base class for `DoubleList`s backed by random access structures like arrays.

Read-only subclasses must override `get(int)` and `size()`. Mutable subclasses should also override `set(int, double)`. Variably-sized subclasses should also override `add(int, double)` and `removeElementAt(int)`. All other methods have at least some base implementation derived from these. Subclasses may choose to override these methods to provide a more efficient implementation.

Since:
  Commons Primitives 1.0
Version:
  $Revision: 1.3 $ $Date: 2003/10/16 20:49:36 $
Author:
  Rodney Waldhoff

Nested Class Summary
`protected static class` | `RandomAccessDoubleList.RandomAccessDoubleListIterator`
`protected static class` | `RandomAccessDoubleList.RandomAccessDoubleSubList`

Constructor Summary
`protected` | `RandomAccessDoubleList()` Constructs an empty list.

Method Summary
`boolean` | `add(double element)` Appends the specified element to the end of me (optional operation).
`void` | `add(int index, double element)` Unsupported in this implementation.
`boolean` | `addAll(int index, DoubleCollection collection)` Inserts all of the elements in the specified collection into me, at the specified position (optional operation).
`boolean` | `equals(Object that)` Returns `true` iff that is an `DoubleList` that contains the same elements in the same order as me.
`abstract double` | `get(int index)` Returns the value of the element at the specified position within me.
`protected int` | `getModCount()` Get my count of structural modifications.
`int` | `hashCode()` Returns my hash code.
`protected void` | `incrModCount()` Increment my count of structural modifications.
`int` | `indexOf(double element)` Returns the index of the first occurrence of the specified element within me, or `-1` if I do not contain the element.
`DoubleIterator` | `iterator()` Returns an `iterator` over all my elements, in the appropriate sequence.
`int` | `lastIndexOf(double element)` Returns the index of the last occurrence of the specified element within me, or -1 if I do not contain the element.
`DoubleListIterator` | `listIterator()` Returns a `bidirectional iterator` over all my elements, in the appropriate sequence.
`DoubleListIterator` | `listIterator(int index)` Returns a `bidirectional iterator` over all my elements, in the appropriate sequence, starting at the specified position.
`double` | `removeElementAt(int index)` Unsupported in this implementation.
`double` | `set(int index, double element)` Unsupported in this implementation.
`abstract int` | `size()` Returns the number of elements I contain.
`DoubleList` | `subList(int fromIndex, int toIndex)` Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive.
`String` | `toString()`

Methods inherited from class org.apache.commons.collections.primitives.AbstractDoubleCollection
`addAll, clear, contains, containsAll, isEmpty, removeAll, removeElement, retainAll, toArray, toArray`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.apache.commons.collections.primitives.DoubleCollection
`addAll, clear, contains, containsAll, isEmpty, removeAll, removeElement, retainAll, toArray, toArray`

Constructor Detail

### RandomAccessDoubleList

    protected RandomAccessDoubleList()

  Constructs an empty list.

Method Detail

### get

    public abstract double get(int index)

  Description copied from interface: `DoubleList`
  Returns the value of the element at the specified position within me.

  Specified by:
    `get` in interface `DoubleList`
  Parameters:
    `index` - the index of the element to return
  Returns:
    the value of the element at the specified position

### size

    public abstract int size()

  Description copied from interface: `DoubleCollection`
  Returns the number of elements I contain.

  Specified by:
    `size` in interface `DoubleCollection`
  Specified by:
    `size` in class `AbstractDoubleCollection`

### removeElementAt

    public double removeElementAt(int index)

  Unsupported in this implementation.

  Specified by:
    `removeElementAt` in interface `DoubleList`
  Parameters:
    `index` - the index of the element to remove
  Returns:
    the value of the element that was removed
  Throws:
    `UnsupportedOperationException` - since this method is not supported

### set

    public double set(int index,
                      double element)

  Unsupported in this implementation.

  Specified by:
    `set` in interface `DoubleList`
  Parameters:
    `index` - the index of the element to change
    `element` - the value to be stored at the specified position
  Returns:
    the value previously stored at the specified position
  Throws:
    `UnsupportedOperationException` - since this method is not supported

### add

    public void add(int index,
                    double element)

  Unsupported in this implementation.

  Specified by:
    `add` in interface `DoubleList`
  Parameters:
    `index` - the index at which to insert the element
    `element` - the value to insert
  Throws:
    `UnsupportedOperationException` - since this method is not supported

### add

    public boolean add(double element)

  Description copied from interface: `DoubleList`
  Appends the specified element to the end of me (optional operation). Returns `true` iff I changed as a result of this call.

  If a collection refuses to add the specified element for any reason other than that it already contains the element, it must throw an exception (rather than simply returning `false`). This preserves the invariant that a collection always contains the specified element after this call returns.

  Specified by:
    `add` in interface `DoubleList`
  Overrides:
    `add` in class `AbstractDoubleCollection`

### addAll

    public boolean addAll(int index,
                          DoubleCollection collection)

  Description copied from interface: `DoubleList`
  Inserts all of the elements in the specified collection into me, at the specified position (optional operation). Shifts the element currently at that position (if any) and any subsequent elements to the right, increasing their indices. The new elements will appear in the order that they are returned by the given collection's `iterator`.

  Specified by:
    `addAll` in interface `DoubleList`
  Parameters:
    `index` - the index at which to insert the first element from the specified collection
    `collection` - the `DoubleCollection` of elements to add
  Returns:
    `true` iff I changed as a result of this call

### indexOf

    public int indexOf(double element)

  Description copied from interface: `DoubleList`
  Returns the index of the first occurrence of the specified element within me, or `-1` if I do not contain the element.

  Specified by:
    `indexOf` in interface `DoubleList`
  Parameters:
    `element` - the element to search for
  Returns:
    the smallest index of an element matching the specified value, or `-1` if no such matching element can be found

### lastIndexOf

    public int lastIndexOf(double element)

  Description copied from interface: `DoubleList`
  Returns the index of the last occurrence of the specified element within me, or -1 if I do not contain the element.

  Specified by:
    `lastIndexOf` in interface `DoubleList`
  Parameters:
    `element` - the element to search for
  Returns:
    the largest index of an element matching the specified value, or `-1` if no such matching element can be found

### iterator

    public DoubleIterator iterator()

  Description copied from interface: `DoubleList`
  Returns an `iterator` over all my elements, in the appropriate sequence.

  Specified by:
    `iterator` in interface `DoubleList`
  Specified by:
    `iterator` in class `AbstractDoubleCollection`

### listIterator

    public DoubleListIterator listIterator()

  Description copied from interface: `DoubleList`
  Returns a `bidirectional iterator` over all my elements, in the appropriate sequence.

  Specified by:
    `listIterator` in interface `DoubleList`

### listIterator

    public DoubleListIterator listIterator(int index)

  Description copied from interface: `DoubleList`
  Returns a `bidirectional iterator` over all my elements, in the appropriate sequence, starting at the specified position. The specified index indicates the first element that would be returned by an initial call to the `next` method. An initial call to the `previous` method would return the element with the specified index minus one.

  Specified by:
    `listIterator` in interface `DoubleList`

### subList

    public DoubleList subList(int fromIndex,
                              int toIndex)

  Description copied from interface: `DoubleList`
  Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive. The returned `DoubleList` is backed by me, so that any changes in the returned list are reflected in me, and vice-versa. The returned list supports all of the optional operations that I support.

  Note that when `fromIndex == toIndex`, the returned list is initially empty, and when `fromIndex == 0 && toIndex == `size()`` the returned list is my "improper" sublist, containing all my elements.

  The semantics of the returned list become undefined if I am structurally modified in any way other than via the returned list.

  Specified by:
    `subList` in interface `DoubleList`
  Parameters:
    `fromIndex` - the smallest index (inclusive) in me that appears in the returned list
    `toIndex` - the largest index (exclusive) in me that appears in the returned list
  Returns:
    a view of this list from fromIndex (inclusive) to toIndex (exclusive)

### equals

    public boolean equals(Object that)

  Description copied from interface: `DoubleList`
  Returns `true` iff that is an `DoubleList` that contains the same elements in the same order as me. In other words, returns `true` iff that is an `DoubleList` that has the same `size` as me, and for which the elements returned by its `iterator` are equal (`==`) to the corresponding elements within me. (This contract ensures that this method works properly across different implementations of the `DoubleList` interface.)

  Specified by:
    `equals` in interface `DoubleList`

### hashCode

    public int hashCode()

  Description copied from interface: `DoubleList`
  Returns my hash code.

  The hash code of an `DoubleList` is defined to be the result of the following calculation:

       int hash = 1;
       for(DoubleIterator iter = iterator(); iter.hasNext(); ) {
         double value = iter.next();
         hash = 31*hash + (int)(value ^ (value >>> 32));
       }

  This contract ensures that this method is consistent with `equals` and with the `hashCode` method of a `List` of `Double`s.

  Specified by:
    `hashCode` in interface `DoubleList`

### toString

    public String toString()

### getModCount

    protected int getModCount()

  Get my count of structural modifications.

### incrModCount

    protected void incrModCount()

  Increment my count of structural modifications.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002-2003 Apache Software Foundation. All Rights Reserved.