org.joda.primitives.list.impl
Class ArrayIntList

java.lang.Object
  extended by org.joda.primitives.collection.impl.AbstractPrimitiveCollectable<Integer>
      extended by org.joda.primitives.collection.impl.AbstractIntCollection
          extended by org.joda.primitives.list.impl.AbstractIntList
              extended by org.joda.primitives.list.impl.ArrayIntList
All Implemented Interfaces:
Cloneable, Iterable<Integer>, Collection<Integer>, List<Integer>, IntCollection, PrimitiveCollection<Integer>, IntIterable, IntList, PrimitiveList<Integer>, PrimitiveCollectable<Integer>

public class ArrayIntList
extends AbstractIntList
implements Cloneable

Array based implementation of IntList 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.AbstractIntList
AbstractIntList.PListIterator
 
Constructor Summary
ArrayIntList()
          Constructor.
ArrayIntList(Collection<Integer> coll)
          Constructor that copies the specified values.
ArrayIntList(int initialSize)
          Constructor that defines an initial size for the internal storage array.
ArrayIntList(int[] values)
          Constructor that copies the specified values.
 
Method Summary
 boolean add(int index, int value)
          Adds a primitive value to this collection.
 boolean addAll(int index, int[] values)
          Adds an array of primitive values to this collection at a specified index.
protected  void arrayCopy(int fromIndex, int[] 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(int 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.
 int getInt(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.
 int removeIntAt(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.
 int set(int index, int 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.AbstractIntList
add, add, add, addAll, addAll, checkIndex, checkIndexExists, checkRange, checkSetModifiable, equals, first, firstInt, get, hashCode, indexOf, indexOf, indexOf, indexOf, iterator, last, lastIndexOf, lastIndexOf, lastIndexOf, lastIndexOf, lastInt, listIterator, listIterator, remove, removeInt, set, subList, toIntArray
 
Methods inherited from class org.joda.primitives.collection.impl.AbstractIntCollection
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, toIntArray, toIntArray, 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.IntCollection
addAll, addAll, containsAll, containsAll, containsAll, containsAny, containsAny, containsAny, removeAll, removeAll, removeAll, removeAll, removeFirst, retainAll, retainAll, retainAll, toIntArray, toIntArray
 
Methods inherited from interface org.joda.primitives.collection.PrimitiveCollection
containsAny
 
Methods inherited from interface org.joda.primitives.PrimitiveCollectable
isEmpty
 

Constructor Detail

ArrayIntList

public ArrayIntList()
Constructor.


ArrayIntList

public ArrayIntList(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

ArrayIntList

public ArrayIntList(int[] values)
Constructor that copies the specified values.

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

ArrayIntList

public ArrayIntList(Collection<Integer> 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<Integer>
Specified by:
size in interface List<Integer>
Specified by:
size in interface PrimitiveCollectable<Integer>
Returns:
the current size

getInt

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

Specified by:
getInt in interface IntList
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,
                   int value)
Adds a primitive value to this collection.

Specified by:
add in interface IntList
Overrides:
add in class AbstractIntList
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

removeIntAt

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

Specified by:
removeIntAt in interface IntList
Overrides:
removeIntAt in class AbstractIntList
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<Integer>
Overrides:
removeRange in class AbstractIntList
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 int set(int index,
               int value)
Sets the primitive value at a specified index.

Specified by:
set in interface IntList
Overrides:
set in class AbstractIntList
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<Integer>
Overrides:
optimize in class AbstractPrimitiveCollectable<Integer>

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<Integer>
Specified by:
clear in interface List<Integer>
Specified by:
clear in interface PrimitiveCollectable<Integer>
Overrides:
clear in class AbstractIntList

contains

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

This implementation accesses the internal storage array directly.

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

addAll

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

Specified by:
addAll in interface IntList
Overrides:
addAll in class AbstractIntList
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 AbstractIntCollection
Returns:
true

isRemoveModifiable

protected boolean isRemoveModifiable()
Are the remove methods supported.

Overrides:
isRemoveModifiable in class AbstractIntCollection
Returns:
true

isSetModifiable

protected boolean isSetModifiable()
Are the remove methods supported.

Overrides:
isSetModifiable in class AbstractIntList
Returns:
true

isModifiable

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

Specified by:
isModifiable in interface PrimitiveCollectable<Integer>
Overrides:
isModifiable in class AbstractIntList
Returns:
true

clone

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

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

arrayCopy

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

Overrides:
arrayCopy in class AbstractIntList
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.