org.joda.primitives.list.impl
Class ArrayLongList

java.lang.Object
  extended by org.joda.primitives.collection.impl.AbstractPrimitiveCollectable<Long>
      extended by org.joda.primitives.collection.impl.AbstractLongCollection
          extended by org.joda.primitives.list.impl.AbstractLongList
              extended by org.joda.primitives.list.impl.ArrayLongList
All Implemented Interfaces:
Cloneable, Iterable<Long>, Collection<Long>, List<Long>, LongCollection, PrimitiveCollection<Long>, LongIterable, LongList, PrimitiveList<Long>, PrimitiveCollectable<Long>

public class ArrayLongList
extends AbstractLongList
implements Cloneable

Array based implementation of LongList for primitive int elements.

This class implements List allowing seamless integration with other APIs.

Add, Remove, Set and Clear are supported.

Since:
1.0
Version:
CODE GENERATED
Author:
Stephen Colebourne, Rodney Waldhoff, Jason Tiscione

Nested Class Summary
 
Nested classes/interfaces inherited from class org.joda.primitives.list.impl.AbstractLongList
AbstractLongList.PListIterator
 
Constructor Summary
ArrayLongList()
          Constructor.
ArrayLongList(Collection<Long> coll)
          Constructor that copies the specified values.
ArrayLongList(int initialSize)
          Constructor that defines an initial size for the internal storage array.
ArrayLongList(long[] values)
          Constructor that copies the specified values.
 
Method Summary
 boolean add(int index, long value)
          Adds a primitive value to this collection.
 boolean addAll(int index, long[] values)
          Adds an array of primitive values to this collection at a specified index.
protected  void arrayCopy(int fromIndex, long[] dest, int destIndex, int size)
          Copies data from this collection into the specified array.
 void clear()
          Clears the collection/map of all elements.
 Object clone()
          Clone implementation that calls Object clone().
 boolean contains(long value)
          Checks whether this collection contains a specified primitive value.
protected  void ensureCapacity(int capacity)
          Ensures that the internal storage array has at least the specified size.
 long getLong(int index)
          Gets the primitive value at the specified index.
protected  boolean isAddModifiable()
          Are the add methods supported.
 boolean isModifiable()
          Checks whether the object can currently be modified.
protected  boolean isRemoveModifiable()
          Are the remove methods supported.
protected  boolean isSetModifiable()
          Are the remove methods supported.
 void optimize()
          Optimizes the implementation.
 long removeLongAt(int index)
          Removes a primitive value by index from the list.
 boolean removeRange(int fromIndexInclusive, int toIndexExclusive)
          Removes a range of values from the list.
 long set(int index, long value)
          Sets the primitive value at a specified index.
 int size()
          Gets the current size of the collection.
 
Methods inherited from class org.joda.primitives.list.impl.AbstractLongList
add, add, add, addAll, addAll, checkIndex, checkIndexExists, checkRange, checkSetModifiable, equals, first, firstLong, get, hashCode, indexOf, indexOf, indexOf, indexOf, iterator, last, lastIndexOf, lastIndexOf, lastIndexOf, lastIndexOf, lastLong, listIterator, listIterator, remove, removeLong, set, subList, toLongArray
 
Methods inherited from class org.joda.primitives.collection.impl.AbstractLongCollection
addAll, addAll, addAll, checkAddModifiable, checkRemoveModifiable, contains, containsAll, containsAll, containsAll, containsAll, containsAny, containsAny, containsAny, containsAny, isToPrimitivePossible, remove, removeAll, removeAll, removeAll, removeAll, removeAll, removeFirst, retainAll, retainAll, retainAll, retainAll, toArray, toArray, toLongArray, toLongArray, toObject, toPrimitive, toPrimitiveArray, toString
 
Methods inherited from class org.joda.primitives.collection.impl.AbstractPrimitiveCollectable
isEmpty
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.joda.primitives.collection.PrimitiveCollection
containsAny
 
Methods inherited from interface org.joda.primitives.PrimitiveCollectable
isEmpty
 
Methods inherited from interface java.util.List
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray
 
Methods inherited from interface org.joda.primitives.collection.LongCollection
addAll, addAll, containsAll, containsAll, containsAll, containsAny, containsAny, containsAny, removeAll, removeAll, removeAll, removeAll, removeFirst, retainAll, retainAll, retainAll, toLongArray, toLongArray
 
Methods inherited from interface org.joda.primitives.collection.PrimitiveCollection
containsAny
 
Methods inherited from interface org.joda.primitives.PrimitiveCollectable
isEmpty
 

Constructor Detail

ArrayLongList

public ArrayLongList()
Constructor.


ArrayLongList

public ArrayLongList(int initialSize)
Constructor that defines an initial size for the internal storage array.

Parameters:
initialSize - the initial size of the internal array, negative treated as zero

ArrayLongList

public ArrayLongList(long[] values)
Constructor that copies the specified values.

Parameters:
values - an array of values to copy, null treated as zero size array

ArrayLongList

public ArrayLongList(Collection<Long> coll)
Constructor that copies the specified values.

Parameters:
coll - a collection of values to copy, null treated as zero size collection
Method Detail

size

public int size()
Gets the current size of the collection.

Specified by:
size in interface Collection<Long>
Specified by:
size in interface List<Long>
Specified by:
size in interface PrimitiveCollectable<Long>
Returns:
the current size

getLong

public long getLong(int index)
Gets the primitive value at the specified index.

Specified by:
getLong in interface LongList
Parameters:
index - the index to get from
Returns:
value at the index
Throws:
IndexOutOfBoundsException - if the index is invalid

add

public boolean add(int index,
                   long value)
Adds a primitive value to this collection.

Specified by:
add in interface LongList
Overrides:
add in class AbstractLongList
Parameters:
index - the index to insert at
value - the value to add to this collection
Returns:
true if this collection was modified by this method call
Throws:
IndexOutOfBoundsException - if the index is invalid

removeLongAt

public long removeLongAt(int index)
Removes a primitive value by index from the list.

Specified by:
removeLongAt in interface LongList
Overrides:
removeLongAt in class AbstractLongList
Parameters:
index - the index to remove from
Returns:
the primitive value previously at this index
Throws:
IndexOutOfBoundsException - if the index is invalid

removeRange

public boolean removeRange(int fromIndexInclusive,
                           int toIndexExclusive)
Removes a range of values from the list.

Specified by:
removeRange in interface PrimitiveList<Long>
Overrides:
removeRange in class AbstractLongList
Parameters:
fromIndexInclusive - the start of the range to remove, inclusive
toIndexExclusive - the end of the range to remove, exclusive
Returns:
true if the collection was modified

set

public long set(int index,
                long value)
Sets the primitive value at a specified index.

Specified by:
set in interface LongList
Overrides:
set in class AbstractLongList
Parameters:
index - the index to set
value - the value to store
Returns:
the previous value at the index
Throws:
IndexOutOfBoundsException - if the index is invalid

optimize

public void optimize()
Optimizes the implementation.

This implementation changes the internal array to be the same size as the size of the collection.

Specified by:
optimize in interface PrimitiveCollectable<Long>
Overrides:
optimize in class AbstractPrimitiveCollectable<Long>

clear

public void clear()
Clears the collection/map of all elements.

This implementation resets the size, but does not reduce the internal storage array.

The collection/map will have a zero size after this method completes.

Specified by:
clear in interface Collection<Long>
Specified by:
clear in interface List<Long>
Specified by:
clear in interface PrimitiveCollectable<Long>
Overrides:
clear in class AbstractLongList

contains

public boolean contains(long value)
Checks whether this collection contains a specified primitive value.

This implementation accesses the internal storage array directly.

Specified by:
contains in interface LongCollection
Overrides:
contains in class AbstractLongList
Parameters:
value - the value to search for
Returns:
true if the value is found

addAll

public boolean addAll(int index,
                      long[] values)
Adds an array of primitive values to this collection at a specified index.

Specified by:
addAll in interface LongList
Overrides:
addAll in class AbstractLongList
Parameters:
index - the index to add at
values - the values to add to this collection
Returns:
true if this collection was modified by this method call
Throws:
IndexOutOfBoundsException - if the index is invalid

isAddModifiable

protected boolean isAddModifiable()
Are the add methods supported.

Overrides:
isAddModifiable in class AbstractLongCollection
Returns:
true

isRemoveModifiable

protected boolean isRemoveModifiable()
Are the remove methods supported.

Overrides:
isRemoveModifiable in class AbstractLongCollection
Returns:
true

isSetModifiable

protected boolean isSetModifiable()
Are the remove methods supported.

Overrides:
isSetModifiable in class AbstractLongList
Returns:
true

isModifiable

public boolean isModifiable()
Checks whether the object can currently be modified.

Specified by:
isModifiable in interface PrimitiveCollectable<Long>
Overrides:
isModifiable in class AbstractLongList
Returns:
true

clone

public Object clone()
Clone implementation that calls Object clone().

Specified by:
clone in interface PrimitiveCollectable<Long>
Overrides:
clone in class AbstractPrimitiveCollectable<Long>
Returns:
the clone

arrayCopy

protected void arrayCopy(int fromIndex,
                         long[] dest,
                         int destIndex,
                         int size)
Copies data from this collection into the specified array. This method is pre-validated.

Overrides:
arrayCopy in class AbstractLongList
Parameters:
fromIndex - the index to start from
dest - the destination array
destIndex - the destination start index
size - the number of items to copy

ensureCapacity

protected void ensureCapacity(int capacity)
Ensures that the internal storage array has at least the specified size.

Parameters:
capacity - the amount to expand to


Copyright © 2005-2010 Joda.org. All Rights Reserved.