org.apache.commons.collections.primitives.adapters
Class AbstractListDoubleList

java.lang.Object
  extended by org.apache.commons.collections.primitives.adapters.AbstractCollectionDoubleCollection
      extended by org.apache.commons.collections.primitives.adapters.AbstractListDoubleList
All Implemented Interfaces:
DoubleCollection, DoubleList
Direct Known Subclasses:
ListDoubleList, NonSerializableListDoubleList

abstract class AbstractListDoubleList
extends AbstractCollectionDoubleCollection
implements DoubleList

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

Constructor Summary
AbstractListDoubleList()
           
 
Method Summary
 void add(int index, double element)
          Inserts the specified element at the specified position (optional operation).
 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(java.lang.Object obj)
          Returns true iff that is an DoubleList that contains the same elements in the same order as me.
 double get(int index)
          Returns the value of the element at the specified position within me.
protected  java.util.Collection getCollection()
           
protected abstract  java.util.List getList()
           
 int hashCode()
          Returns my hash code.
 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.
 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()
          wraps the DoubleList returned by my underlying DoubleListIterator, if any.
 DoubleListIterator listIterator(int index)
          wraps the DoubleList returned by my underlying DoubleListIterator, if any.
 double removeElementAt(int index)
          Removes the element at the specified position in (optional operation).
 double set(int index, double element)
          Replaces the element at the specified position in me with the specified element (optional operation).
 DoubleList subList(int fromIndex, int toIndex)
          Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive.
 
Methods inherited from class org.apache.commons.collections.primitives.adapters.AbstractCollectionDoubleCollection
add, addAll, clear, contains, containsAll, isEmpty, iterator, removeAll, removeElement, retainAll, size, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.commons.collections.primitives.DoubleList
add, iterator
 
Methods inherited from interface org.apache.commons.collections.primitives.DoubleCollection
addAll, clear, contains, containsAll, isEmpty, removeAll, removeElement, retainAll, size, toArray, toArray
 

Constructor Detail

AbstractListDoubleList

AbstractListDoubleList()
Method Detail

add

public void add(int index,
                double element)
Description copied from interface: DoubleList
Inserts the specified element 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.

Specified by:
add in interface DoubleList
Parameters:
index - the index at which to insert the element
element - the value to insert

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

get

public 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

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

listIterator

public DoubleListIterator listIterator()
wraps the DoubleList returned by my underlying DoubleListIterator, if any.

Specified by:
listIterator in interface DoubleList

listIterator

public DoubleListIterator listIterator(int index)
wraps the DoubleList returned by my underlying DoubleListIterator, if any.

Specified by:
listIterator in interface DoubleList

removeElementAt

public double removeElementAt(int index)
Description copied from interface: DoubleList
Removes the element at the specified position in (optional operation). Any subsequent elements are shifted to the left, subtracting one from their indices. Returns the element that was removed.

Specified by:
removeElementAt in interface DoubleList
Parameters:
index - the index of the element to remove
Returns:
the value of the element that was removed

set

public double set(int index,
                  double element)
Description copied from interface: DoubleList
Replaces the element at the specified position in me with the specified element (optional operation).

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

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(java.lang.Object obj)
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
Overrides:
equals in class java.lang.Object
Parameters:
obj - the object to compare to me
Returns:
true iff that is an DoubleList that contains the same elements in the same order as me

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 Doubles.

Specified by:
hashCode in interface DoubleList
Overrides:
hashCode in class java.lang.Object
Returns:
my hash code

getCollection

protected final java.util.Collection getCollection()
Specified by:
getCollection in class AbstractCollectionDoubleCollection

getList

protected abstract java.util.List getList()


Copyright (c) 2002-2003 - Apache Software Foundation