uka.util
Class EnlargingDoubleArray

java.lang.Object
  extended byuka.util.EnlargingDoubleArray
All Implemented Interfaces:
java.io.Serializable

public final class EnlargingDoubleArray
extends java.lang.Object
implements java.io.Serializable

A simple wrapper class for a regular Java array. In addition to the features of built-in Java arrays, instances of this class can be enlarged either automatically by setting a value to a position that exceeds the current size() of this array, or manually be explicitely setting the size.

This class is more convenient than a ArrayList, if direct manipulation of the array size is required. In addition there are customized versions of this class for all Java basic types.

Author:
Bernhard Haumacher
See Also:
Serialized Form

Field Summary
(package private)  double[] array
           
 double DEFAULT
           
(package private)  int length
           
static int MIN_SIZE
           
 
Constructor Summary
EnlargingDoubleArray()
           
EnlargingDoubleArray(EnlargingDoubleArray other)
           
EnlargingDoubleArray(int length)
           
EnlargingDoubleArray(int length, double DEFAULT)
           
 
Method Summary
 double add(double obj)
           
 void appendTo(ToString s)
           
 void clear()
           
static void copy(EnlargingDoubleArray src, int srcIndex, EnlargingDoubleArray dst, int dstIndex, int length)
           
private  void enlarge(int newLength)
           
 void fill(int start, int stop, double value)
           
 double get(int idx)
           
 DoubleIterator iterator()
           
 void move(int moveSrc, int moveDst, int moveLength)
           
 void permute(Permutation permutation)
          Permutes the contents of this array.
 double pop()
          Returns the element at position size() - 1 and shrinks the size of this array by 1.
 double remove(int idx)
           
 double set(int idx, double obj)
           
 void setSize(int size)
           
 int size()
           
 double test(int idx)
          Same as get(int), except for indices larger than or equal to the array length.
 double[] toArray(double[] a)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT

public final double DEFAULT

length

int length

array

double[] array

MIN_SIZE

public static final int MIN_SIZE
See Also:
Constant Field Values
Constructor Detail

EnlargingDoubleArray

public EnlargingDoubleArray()

EnlargingDoubleArray

public EnlargingDoubleArray(int length)

EnlargingDoubleArray

public EnlargingDoubleArray(int length,
                            double DEFAULT)

EnlargingDoubleArray

public EnlargingDoubleArray(EnlargingDoubleArray other)
Method Detail

get

public double get(int idx)

test

public double test(int idx)
Same as get(int), except for indices larger than or equal to the array length. For these cases, test(int) returns a null value instead of throwing an exception.


set

public double set(int idx,
                  double obj)

copy

public static void copy(EnlargingDoubleArray src,
                        int srcIndex,
                        EnlargingDoubleArray dst,
                        int dstIndex,
                        int length)

add

public double add(double obj)

remove

public double remove(int idx)

pop

public double pop()
Returns the element at position size() - 1 and shrinks the size of this array by 1. This method enables a stack-like usage of this array.


permute

public void permute(Permutation permutation)
Permutes the contents of this array. The element at index n is moved to index permutation.compute(n).


setSize

public void setSize(int size)

size

public int size()

clear

public void clear()

move

public void move(int moveSrc,
                 int moveDst,
                 int moveLength)

fill

public void fill(int start,
                 int stop,
                 double value)

enlarge

private final void enlarge(int newLength)

iterator

public DoubleIterator iterator()

toArray

public double[] toArray(double[] a)

toString

public java.lang.String toString()

appendTo

public void appendTo(ToString s)