public class TDoubleArrayList
extends java.lang.Object
implements java.io.Externalizable, java.lang.Cloneable
| Modifier and Type | Field and Description |
|---|---|
protected double[] |
_data
the data of the list
|
protected int |
_pos
the index after the last entry in the list
|
protected static int |
DEFAULT_CAPACITY
the default capacity for new lists
|
| Constructor and Description |
|---|
TDoubleArrayList()
Creates a new
TDoubleArrayList instance with the
default capacity. |
TDoubleArrayList(double[] values)
Creates a new
TDoubleArrayList instance whose
capacity is the greater of the length of values and
DEFAULT_CAPACITY and whose initial contents are the specified
values. |
TDoubleArrayList(int capacity)
Creates a new
TDoubleArrayList instance with the
specified capacity. |
| Modifier and Type | Method and Description |
|---|---|
void |
add(double val)
Adds val to the end of the list, growing as needed.
|
void |
add(double[] vals)
Adds the values in the array vals to the end of the
list, in order.
|
void |
add(double[] vals,
int offset,
int length)
Adds a subset of the values in the array vals to the
end of the list, in order.
|
int |
binarySearch(double value)
Performs a binary search for value in the entire list.
|
int |
binarySearch(double value,
int fromIndex,
int toIndex)
Performs a binary search for value in the specified
range.
|
void |
clear()
Flushes the internal state of the list, resetting the capacity
to the default.
|
void |
clear(int capacity)
Flushes the internal state of the list, setting the capacity of
the empty list to capacity.
|
java.lang.Object |
clone()
Returns a clone of this list.
|
boolean |
contains(double value)
Searches the list for value
|
void |
ensureCapacity(int capacity)
Grow the internal array as needed to accommodate the specified
number of elements.
|
boolean |
equals(java.lang.Object other)
Compares this list to another list, value by value.
|
void |
fill(double val)
Fills every slot in the list with the specified value.
|
void |
fill(int fromIndex,
int toIndex,
double val)
Fills a range in the list with the specified value.
|
boolean |
forEach(TDoubleProcedure procedure)
Applies the procedure to each value in the list in ascending
(front to back) order.
|
boolean |
forEachDescending(TDoubleProcedure procedure)
Applies the procedure to each value in the list in descending
(back to front) order.
|
double |
get(int offset)
Returns the value at the specified offset.
|
double |
getQuick(int offset)
Returns the value at the specified offset without doing any
bounds checking.
|
double |
getSet(int offset,
double val)
Sets the value at the specified offset and returns the
previously stored value.
|
TDoubleArrayList |
grep(TDoubleProcedure condition)
Searches the list for values satisfying condition in
the manner of the *nix grep utility.
|
int |
hashCode() |
int |
indexOf(double value)
Searches the list front to back for the index of
value.
|
int |
indexOf(int offset,
double value)
Searches the list front to back for the index of
value, starting at offset.
|
void |
insert(int offset,
double value)
Inserts value into the list at offset.
|
void |
insert(int offset,
double[] values)
Inserts the array of values into the list at
offset.
|
void |
insert(int offset,
double[] values,
int valOffset,
int len)
Inserts a slice of the array of values into the list
at offset.
|
TDoubleArrayList |
inverseGrep(TDoubleProcedure condition)
Searches the list for values which do not satisfy
condition.
|
boolean |
isEmpty()
Tests whether this list contains any values.
|
int |
lastIndexOf(double value)
Searches the list back to front for the last index of
value.
|
int |
lastIndexOf(int offset,
double value)
Searches the list back to front for the last index of
value, starting at offset.
|
double |
max()
Finds the maximum value in the list.
|
double |
min()
Finds the minimum value in the list.
|
void |
readExternal(java.io.ObjectInput in) |
double |
remove(int offset)
Removes the value at offset from the list.
|
void |
remove(int offset,
int length)
Removes length values from the list, starting at
offset
|
void |
reset()
Sets the size of the list to 0, but does not change its
capacity.
|
void |
resetQuick()
Sets the size of the list to 0, but does not change its
capacity.
|
void |
reverse()
Reverse the order of the elements in the list.
|
void |
reverse(int from,
int to)
Reverse the order of the elements in the range of the list.
|
void |
set(int offset,
double val)
Sets the value at the specified offset.
|
void |
set(int offset,
double[] values)
Replace the values in the list starting at offset with
the contents of the values array.
|
void |
set(int offset,
double[] values,
int valOffset,
int length)
Replace the values in the list starting at offset with
length values from the values array, starting
at valOffset.
|
void |
setQuick(int offset,
double val)
Sets the value at the specified offset without doing any bounds
checking.
|
void |
shuffle(java.util.Random rand)
Shuffle the elements of the list using the specified random
number generator.
|
int |
size()
Returns the number of values in the list.
|
void |
sort()
Sort the values in the list (ascending) using the Sun quicksort
implementation.
|
void |
sort(int fromIndex,
int toIndex)
Sort a slice of the list (ascending) using the Sun quicksort
implementation.
|
TDoubleArrayList |
subList(int begin,
int end)
Returns a sublist of this list.
|
double[] |
toNativeArray()
Copies the contents of the list into a native array.
|
void |
toNativeArray(double[] dest,
int offset,
int len)
Copies a slice of the list into a native array.
|
double[] |
toNativeArray(int offset,
int len)
Copies a slice of the list into a native array.
|
java.lang.String |
toString()
Returns a String representation of the list, front to back.
|
void |
transformValues(TDoubleFunction function)
Transform each value in the list using the specified function.
|
void |
trimToSize()
Sheds any excess capacity above and beyond the current size of
the list.
|
void |
writeExternal(java.io.ObjectOutput out) |
protected double[] _data
protected int _pos
protected static final int DEFAULT_CAPACITY
public TDoubleArrayList()
TDoubleArrayList instance with the
default capacity.public TDoubleArrayList(int capacity)
TDoubleArrayList instance with the
specified capacity.capacity - an int valuepublic TDoubleArrayList(double[] values)
TDoubleArrayList instance whose
capacity is the greater of the length of values and
DEFAULT_CAPACITY and whose initial contents are the specified
values.values - an double[] valuepublic void ensureCapacity(int capacity)
capacity - an int valuepublic int size()
public boolean isEmpty()
public void trimToSize()
public void add(double val)
val - an double valuepublic void add(double[] vals)
vals - an double[] valuepublic void add(double[] vals,
int offset,
int length)
vals - an double[] valueoffset - the offset at which to start copyinglength - the number of values to copy.public void insert(int offset,
double value)
offset - an int valuevalue - an double valuepublic void insert(int offset,
double[] values)
offset - an int valuevalues - an double[] valuepublic void insert(int offset,
double[] values,
int valOffset,
int len)
offset - an int valuevalues - an double[] valuevalOffset - the offset in the values array at which to
start copying.len - the number of values to copy from the values arraypublic double get(int offset)
offset - an int valuedouble valuepublic double getQuick(int offset)
offset - an int valuedouble valuepublic void set(int offset,
double val)
offset - an int valueval - an double valuepublic double getSet(int offset,
double val)
offset - an int valueval - an double valuepublic void set(int offset,
double[] values)
offset - the first offset to replacevalues - the source of the new valuespublic void set(int offset,
double[] values,
int valOffset,
int length)
offset - the first offset to replacevalues - the source of the new valuesvalOffset - the first value to copy from the values arraylength - the number of values to copypublic void setQuick(int offset,
double val)
offset - an int valueval - an double valuepublic void clear()
public void clear(int capacity)
capacity - an int valuepublic void reset()
clear method if you want to recyle a list without
allocating new backing arrays.clear()public void resetQuick()
clear method if you want to recyle a list
without allocating new backing arrays. This method differs
from reset in that it does not clear the old
values in the backing array. Thus, it is possible for getQuick to return stale data if this method is used
and the caller is careless about bounds checking.reset(),
clear(),
getQuick(int)public double remove(int offset)
offset - an int valuepublic void remove(int offset,
int length)
offset - an int valuelength - an int valuepublic void transformValues(TDoubleFunction function)
function - a TDoubleFunction valuepublic void reverse()
public void reverse(int from,
int to)
from - the inclusive index at which to start reversingto - the exclusive index at which to stop reversingpublic void shuffle(java.util.Random rand)
rand - a Random valuepublic java.lang.Object clone()
clone in class java.lang.Objectpublic TDoubleArrayList subList(int begin, int end)
begin - low endpoint (inclusive) of the subList.end - high endpoint (exclusive) of the subList.java.lang.IndexOutOfBoundsException - - endpoint out of rangejava.lang.IllegalArgumentException - - endpoints out of order (end > begin)public double[] toNativeArray()
double[] valuepublic double[] toNativeArray(int offset,
int len)
offset - the offset at which to start copyinglen - the number of values to copy.double[] valuepublic void toNativeArray(double[] dest,
int offset,
int len)
dest - the array to copy into.offset - the offset of the first value to copylen - the number of values to copy.public boolean equals(java.lang.Object other)
equals in class java.lang.Objectother - the object to compare againstpublic int hashCode()
hashCode in class java.lang.Objectpublic boolean forEach(TDoubleProcedure procedure)
procedure - a TDoubleProcedure valuepublic boolean forEachDescending(TDoubleProcedure procedure)
procedure - a TDoubleProcedure valuepublic void sort()
Arrays.sort(int[])public void sort(int fromIndex,
int toIndex)
fromIndex - the index at which to start sorting (inclusive)toIndex - the index at which to stop sorting (exclusive)Arrays.sort(int[])public void fill(double val)
val - the value to use when fillingpublic void fill(int fromIndex,
int toIndex,
double val)
fromIndex - the offset at which to start filling (inclusive)toIndex - the offset at which to stop filling (exclusive)val - the value to use when fillingpublic int binarySearch(double value)
value - the value to search forpublic int binarySearch(double value,
int fromIndex,
int toIndex)
value - the value to search forfromIndex - the lower boundary of the range (inclusive)toIndex - the upper boundary of the range (exclusive)public int indexOf(double value)
value - an double valuefor faster searches on sorted listspublic int indexOf(int offset,
double value)
offset - the offset at which to start the linear search
(inclusive)value - an double valuefor faster searches on sorted listspublic int lastIndexOf(double value)
value - an double valuefor faster searches on sorted listspublic int lastIndexOf(int offset,
double value)
offset - the offset at which to start the linear search
(exclusive)value - an double valuefor faster searches on sorted listspublic boolean contains(double value)
value - an double valuepublic TDoubleArrayList grep(TDoubleProcedure condition)
condition - a condition to apply to each element in the listpublic TDoubleArrayList inverseGrep(TDoubleProcedure condition)
grep -v.condition - a condition to apply to each element in the listpublic double max()
java.lang.IllegalStateException - if the list is emptypublic double min()
java.lang.IllegalStateException - if the list is emptypublic java.lang.String toString()
toString in class java.lang.ObjectString valuepublic void writeExternal(java.io.ObjectOutput out)
throws java.io.IOException
writeExternal in interface java.io.Externalizablejava.io.IOExceptionpublic void readExternal(java.io.ObjectInput in)
throws java.io.IOException,
java.lang.ClassNotFoundException
readExternal in interface java.io.Externalizablejava.io.IOExceptionjava.lang.ClassNotFoundExceptionGNU Trove is copyright © 2001-2009 Eric D. Friedman. All Rights Reserved.