org.joda.primitives.list.impl
Class ArrayByteList

java.lang.Object
  extended by org.joda.primitives.collection.impl.AbstractPrimitiveCollectable<Byte>
      extended by org.joda.primitives.collection.impl.AbstractByteCollection
          extended by org.joda.primitives.list.impl.AbstractByteList
              extended by org.joda.primitives.list.impl.ArrayByteList
All Implemented Interfaces:
Cloneable, Iterable<Byte>, Collection<Byte>, List<Byte>, ByteCollection, PrimitiveCollection<Byte>, ByteIterable, ByteList, PrimitiveList<Byte>, PrimitiveCollectable<Byte>

public class ArrayByteList
extends AbstractByteList
implements Cloneable

Array based implementation of ByteList 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.AbstractByteList
AbstractByteList.PListIterator
 
Constructor Summary
ArrayByteList()
          Constructor.
ArrayByteList(byte[] values)
          Constructor that copies the specified values.
ArrayByteList(Collection<Byte> coll)
          Constructor that copies the specified values.
ArrayByteList(int initialSize)
          Constructor that defines an initial size for the internal storage array.
 
Method Summary
 boolean add(int index, byte value)
          Adds a primitive value to this collection.
 boolean addAll(int index, byte[] values)
          Adds an array of primitive values to this collection at a specified index.
protected  void arrayCopy(int fromIndex, byte[] 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(byte 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.
 byte getByte(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.
 byte removeByteAt(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.
 byte set(int index, byte 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.AbstractByteList
add, add, add, addAll, addAll, checkIndex, checkIndexExists, checkRange, checkSetModifiable, equals, first, firstByte, get, hashCode, indexOf, indexOf, indexOf, indexOf, iterator, last, lastByte, lastIndexOf, lastIndexOf, lastIndexOf, lastIndexOf, listIterator, listIterator, remove, removeByte, set, subList, toByteArray
 
Methods inherited from class org.joda.primitives.collection.impl.AbstractByteCollection
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, toByteArray, toByteArray, 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.ByteCollection
addAll, addAll, containsAll, containsAll, containsAll, containsAny, containsAny, containsAny, removeAll, removeAll, removeAll, removeAll, removeFirst, retainAll, retainAll, retainAll, toByteArray, toByteArray
 
Methods inherited from interface org.joda.primitives.collection.PrimitiveCollection
containsAny
 
Methods inherited from interface org.joda.primitives.PrimitiveCollectable
isEmpty
 

Constructor Detail

ArrayByteList

public ArrayByteList()
Constructor.


ArrayByteList

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

ArrayByteList

public ArrayByteList(byte[] values)
Constructor that copies the specified values.

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

ArrayByteList

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

getByte

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

Specified by:
getByte in interface ByteList
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,
                   byte value)
Adds a primitive value to this collection.

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

removeByteAt

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

Specified by:
removeByteAt in interface ByteList
Overrides:
removeByteAt in class AbstractByteList
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<Byte>
Overrides:
removeRange in class AbstractByteList
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 byte set(int index,
                byte value)
Sets the primitive value at a specified index.

Specified by:
set in interface ByteList
Overrides:
set in class AbstractByteList
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<Byte>
Overrides:
optimize in class AbstractPrimitiveCollectable<Byte>

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

contains

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

This implementation accesses the internal storage array directly.

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

addAll

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

Specified by:
addAll in interface ByteList
Overrides:
addAll in class AbstractByteList
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 AbstractByteCollection
Returns:
true

isRemoveModifiable

protected boolean isRemoveModifiable()
Are the remove methods supported.

Overrides:
isRemoveModifiable in class AbstractByteCollection
Returns:
true

isSetModifiable

protected boolean isSetModifiable()
Are the remove methods supported.

Overrides:
isSetModifiable in class AbstractByteList
Returns:
true

isModifiable

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

Specified by:
isModifiable in interface PrimitiveCollectable<Byte>
Overrides:
isModifiable in class AbstractByteList
Returns:
true

clone

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

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

arrayCopy

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

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