org.apache.commons.collections.primitives
Interface LongList

All Superinterfaces:
LongCollection
All Known Implementing Classes:
AbstractListLongList, ArrayLongList, ArrayUnsignedIntList, BaseProxyLongList, BaseUnmodifiableLongList, ListLongList, NonSerializableListLongList, NonSerializableUnmodifiableLongList, RandomAccessLongList, RandomAccessLongList.RandomAccessLongSubList, UnmodifiableLongList

public interface LongList
extends LongCollection

An ordered collection of long values.

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

Method Summary
 void add(int index, long element)
          Inserts the specified element at the specified position (optional operation).
 boolean add(long element)
          Appends the specified element to the end of me (optional operation).
 boolean addAll(int index, LongCollection 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 LongList that contains the same elements in the same order as me.
 long get(int index)
          Returns the value of the element at the specified position within me.
 int hashCode()
          Returns my hash code.
 int indexOf(long element)
          Returns the index of the first occurrence of the specified element within me, or -1 if I do not contain the element.
 LongIterator iterator()
          Returns an iterator over all my elements, in the appropriate sequence.
 int lastIndexOf(long element)
          Returns the index of the last occurrence of the specified element within me, or -1 if I do not contain the element.
 LongListIterator listIterator()
          Returns a bidirectional iterator over all my elements, in the appropriate sequence.
 LongListIterator listIterator(int index)
          Returns a bidirectional iterator over all my elements, in the appropriate sequence, starting at the specified position.
 long removeElementAt(int index)
          Removes the element at the specified position in (optional operation).
 long set(int index, long element)
          Replaces the element at the specified position in me with the specified element (optional operation).
 LongList subList(int fromIndex, int toIndex)
          Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive.
 
Methods inherited from interface org.apache.commons.collections.primitives.LongCollection
addAll, clear, contains, containsAll, isEmpty, removeAll, removeElement, retainAll, size, toArray, toArray
 

Method Detail

add

boolean add(long element)
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 LongCollection
Parameters:
element - the value whose presence within me is to be ensured
Returns:
true iff I changed as a result of this call
Throws:
java.lang.UnsupportedOperationException - when this operation is not supported
java.lang.IllegalArgumentException - may be thrown if some aspect of the specified element prevents it from being added to me

add

void add(int index,
         long element)
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.

Parameters:
index - the index at which to insert the element
element - the value to insert
Throws:
java.lang.UnsupportedOperationException - when this operation is not supported
java.lang.IllegalArgumentException - if some aspect of the specified element prevents it from being added to me
java.lang.IndexOutOfBoundsException - if the specified index is out of range

addAll

boolean addAll(int index,
               LongCollection collection)
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.

Parameters:
index - the index at which to insert the first element from the specified collection
collection - the LongCollection of elements to add
Returns:
true iff I changed as a result of this call
Throws:
java.lang.UnsupportedOperationException - when this operation is not supported
java.lang.IndexOutOfBoundsException - if the specified index is out of range

equals

boolean equals(java.lang.Object that)
Returns true iff that is an LongList that contains the same elements in the same order as me. In other words, returns true iff that is an LongList 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 LongList interface.)

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

get

long get(int index)
Returns the value of the element at the specified position within me.

Parameters:
index - the index of the element to return
Returns:
the value of the element at the specified position
Throws:
java.lang.IndexOutOfBoundsException - if the specified index is out of range

hashCode

int hashCode()
Returns my hash code.

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

 int hash = 1;
 for(LongIterator iter = iterator(); iter.hasNext(); ) {
   long 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 Longs.

Overrides:
hashCode in class java.lang.Object
Returns:
my hash code

indexOf

int indexOf(long element)
Returns the index of the first occurrence of the specified element within me, or -1 if I do not contain the element.

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

iterator

LongIterator iterator()
Returns an iterator over all my elements, in the appropriate sequence.

Specified by:
iterator in interface LongCollection
Returns:
an iterator over all my elements.

lastIndexOf

int lastIndexOf(long element)
Returns the index of the last occurrence of the specified element within me, or -1 if I do not contain the element.

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

LongListIterator listIterator()
Returns a bidirectional iterator over all my elements, in the appropriate sequence.


listIterator

LongListIterator listIterator(int index)
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.

Throws:
java.lang.IndexOutOfBoundsException - if the specified index is out of range

removeElementAt

long removeElementAt(int index)
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.

Parameters:
index - the index of the element to remove
Returns:
the value of the element that was removed
Throws:
java.lang.UnsupportedOperationException - when this operation is not supported
java.lang.IndexOutOfBoundsException - if the specified index is out of range

set

long set(int index,
         long element)
Replaces the element at the specified position in me with the specified element (optional operation).

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 - when this operation is not supported
java.lang.IndexOutOfBoundsException - if the specified index is out of range

subList

LongList subList(int fromIndex,
                 int toIndex)
Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive. The returned LongList 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.

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)
Throws:
java.lang.IndexOutOfBoundsException - if either specified index is out of range


Copyright (c) 2002-2003 - Apache Software Foundation