org.apache.commons.collections.primitives
Class RandomAccessShortList

java.lang.Object
  extended by org.apache.commons.collections.primitives.AbstractShortCollection
      extended by org.apache.commons.collections.primitives.RandomAccessShortList
All Implemented Interfaces:
ShortCollection, ShortList
Direct Known Subclasses:
ArrayShortList, ArrayUnsignedByteList, RandomAccessShortList.RandomAccessShortSubList

public abstract class RandomAccessShortList
extends AbstractShortCollection
implements ShortList

Abstract base class for ShortLists backed by random access structures like arrays.

Read-only subclasses must override get(int) and size(). Mutable subclasses should also override set(int, short). Variably-sized subclasses should also override add(int, short) 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 0.1
Version:
$Revision: 1.2 $ $Date: 2003/10/14 20:04:26 $
Author:
Rodney Waldhoff

Nested Class Summary
private static class RandomAccessShortList.ComodChecker
           
protected static class RandomAccessShortList.RandomAccessShortListIterator
           
protected static class RandomAccessShortList.RandomAccessShortSubList
           
 
Field Summary
private  int _modCount
           
 
Constructor Summary
protected RandomAccessShortList()
          Constructs an empty list.
 
Method Summary
 void add(int index, short element)
          Unsupported in this implementation.
 boolean add(short element)
          Unsupported in this base implementation.
 boolean addAll(int index, ShortCollection collection)
          Inserts all of the elements in the specified collection into me, at the specified position (optional operation).
 boolean equals(java.lang.Object that)
          Returns true iff that is an ShortList that contains the same elements in the same order as me.
abstract  short 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(short element)
          Returns the index of the first occurrence of the specified element within me, or -1 if I do not contain the element.
 ShortIterator iterator()
          Returns an iterator over all my elements.
 int lastIndexOf(short element)
          Returns the index of the last occurrence of the specified element within me, or -1 if I do not contain the element.
 ShortListIterator listIterator()
          Returns a bidirectional iterator over all my elements, in the appropriate sequence.
 ShortListIterator listIterator(int index)
          Returns a bidirectional iterator over all my elements, in the appropriate sequence, starting at the specified position.
 short removeElementAt(int index)
          Unsupported in this implementation.
 short set(int index, short element)
          Unsupported in this implementation.
abstract  int size()
          Returns the number of elements I contain.
 ShortList subList(int fromIndex, int toIndex)
          Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive.
 java.lang.String toString()
           
 
Methods inherited from class org.apache.commons.collections.primitives.AbstractShortCollection
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.ShortCollection
addAll, clear, contains, containsAll, isEmpty, removeAll, removeElement, retainAll, toArray, toArray
 

Field Detail

_modCount

private int _modCount
Constructor Detail

RandomAccessShortList

protected RandomAccessShortList()
Constructs an empty list.

Method Detail

get

public abstract short get(int index)
Description copied from interface: ShortList
Returns the value of the element at the specified position within me.

Specified by:
get in interface ShortList
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: ShortCollection
Returns the number of elements I contain.

Specified by:
size in interface ShortCollection
Specified by:
size in class AbstractShortCollection
Returns:
the number of elements I contain

removeElementAt

public short removeElementAt(int index)
Unsupported in this implementation.

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

set

public short set(int index,
                 short element)
Unsupported in this implementation.

Specified by:
set in interface ShortList
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:
java.lang.UnsupportedOperationException - since this method is not supported

add

public void add(int index,
                short element)
Unsupported in this implementation.

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

add

public boolean add(short element)
Description copied from class: AbstractShortCollection
Unsupported in this base implementation.

Specified by:
add in interface ShortCollection
Specified by:
add in interface ShortList
Overrides:
add in class AbstractShortCollection
Parameters:
element - the value whose presence within me is to be ensured
Returns:
true iff I changed as a result of this call

addAll

public boolean addAll(int index,
                      ShortCollection collection)
Description copied from interface: ShortList
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 ShortList
Parameters:
index - the index at which to insert the first element from the specified collection
collection - the ShortCollection of elements to add
Returns:
true iff I changed as a result of this call

indexOf

public int indexOf(short element)
Description copied from interface: ShortList
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 ShortList
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(short element)
Description copied from interface: ShortList
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 ShortList
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 ShortIterator iterator()
Description copied from interface: ShortCollection
Returns an iterator over all my elements. This base interface places no constraints on the order in which the elements are returned by the returned iterator.

Specified by:
iterator in interface ShortCollection
Specified by:
iterator in interface ShortList
Specified by:
iterator in class AbstractShortCollection
Returns:
an iterator over all my elements.

listIterator

public ShortListIterator listIterator()
Description copied from interface: ShortList
Returns a bidirectional iterator over all my elements, in the appropriate sequence.

Specified by:
listIterator in interface ShortList

listIterator

public ShortListIterator listIterator(int index)
Description copied from interface: ShortList
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 ShortList

subList

public ShortList subList(int fromIndex,
                         int toIndex)
Description copied from interface: ShortList
Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive. The returned ShortList 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 ShortList
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 that)
Description copied from interface: ShortList
Returns true iff that is an ShortList that contains the same elements in the same order as me. In other words, returns true iff that is an ShortList 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 ShortList interface.)

Specified by:
equals in interface ShortList
Overrides:
equals in class java.lang.Object
Parameters:
that - the object to compare to me
Returns:
true iff that is an ShortList that contains the same elements in the same order as me

hashCode

public int hashCode()
Description copied from interface: ShortList
Returns my hash code.

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

 int hash = 1;
 for(ShortIterator iter = iterator(); iter.hasNext(); ) {
   short 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 Shorts.

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

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getModCount

protected int getModCount()
Get my count of structural modifications.


incrModCount

protected void incrModCount()
Increment my count of structural modifications.



Copyright (c) 2002-2003 - Apache Software Foundation