public class DoubleDict
extends java.lang.Object
IntDict
,
StringDict
Modifier and Type | Class and Description |
---|---|
class |
DoubleDict.Entry |
Constructor and Description |
---|
DoubleDict() |
DoubleDict(java.io.BufferedReader reader)
Read a set of entries from a Reader that has each key/value pair on
a single line, separated by a tab.
|
DoubleDict(int length)
Create a new lookup with a specific size.
|
DoubleDict(java.util.Map<java.lang.String,java.lang.Double> incoming) |
DoubleDict(java.lang.Object[][] pairs)
Constructor to allow (more intuitive) inline initialization, e.g.:
|
DoubleDict(java.lang.String[] keys,
double[] values) |
Modifier and Type | Method and Description |
---|---|
void |
add(java.lang.String key,
double amount) |
void |
clear()
Remove all entries.
|
DoubleDict |
copy()
Returns a duplicate copy of this object.
|
void |
div(java.lang.String key,
double amount) |
java.lang.Iterable<DoubleDict.Entry> |
entries() |
java.util.Iterator<DoubleDict.Entry> |
entryIterator() |
double |
get(java.lang.String key)
Return a value for the specified key.
|
double |
get(java.lang.String key,
double alternate) |
DoubleDict |
getPercent()
Sum all of the values in this dictionary, then return a new FloatDict of
each key, divided by the total sum.
|
boolean |
hasKey(java.lang.String key) |
int |
index(java.lang.String what) |
java.lang.String |
key(int index) |
java.lang.String[] |
keyArray()
Return a copy of the internal keys array.
|
java.lang.String[] |
keyArray(java.lang.String[] outgoing) |
java.util.Iterator<java.lang.String> |
keyIterator() |
java.lang.Iterable<java.lang.String> |
keys() |
int |
maxIndex() |
java.lang.String |
maxKey()
The key for a max value; null if empty or everything is NaN (no max).
|
double |
maxValue()
The max value.
|
int |
minIndex() |
java.lang.String |
minKey() |
double |
minValue() |
void |
mult(java.lang.String key,
double amount) |
void |
print() |
double |
remove(java.lang.String key) |
double |
removeIndex(int index) |
void |
resize(int length)
Resize the internal data, this can only be used to shrink the list.
|
void |
save(java.io.File file)
Save tab-delimited entries to a file (TSV format, UTF-8 encoding)
|
void |
set(java.lang.String key,
double amount) |
void |
setIndex(int index,
java.lang.String key,
double value) |
int |
size() |
void |
sortKeys()
Sort the keys alphabetically (ignoring case).
|
void |
sortKeysReverse() |
void |
sortValues()
Sort by values in descending order (largest value will be at [0]).
|
void |
sortValues(boolean stable)
Set true to ensure that the order returned is identical.
|
void |
sortValuesReverse() |
void |
sortValuesReverse(boolean stable) |
void |
sub(java.lang.String key,
double amount) |
double |
sum() |
void |
swap(int a,
int b) |
java.lang.String |
toJSON()
Return this dictionary as a String in JSON format.
|
java.lang.String |
toString() |
double |
value(int index) |
double[] |
valueArray()
Create a new array and copy each of the values into it.
|
double[] |
valueArray(double[] array)
Fill an already-allocated array with the values (more efficient than
creating a new array each time).
|
java.util.Iterator<java.lang.Double> |
valueIterator() |
java.lang.Iterable<java.lang.Double> |
values() |
void |
write(java.io.PrintWriter writer)
Write tab-delimited entries out to
|
public DoubleDict()
public DoubleDict(int length)
public DoubleDict(java.io.BufferedReader reader)
public DoubleDict(java.lang.String[] keys, double[] values)
public DoubleDict(java.lang.Object[][] pairs)
new FloatDict(new Object[][] { { "key1", 1 }, { "key2", 2 } });
public DoubleDict(java.util.Map<java.lang.String,java.lang.Double> incoming)
public int size()
public void resize(int length)
public void clear()
public java.lang.Iterable<DoubleDict.Entry> entries()
public java.util.Iterator<DoubleDict.Entry> entryIterator()
public java.lang.String key(int index)
public java.lang.Iterable<java.lang.String> keys()
public java.util.Iterator<java.lang.String> keyIterator()
public java.lang.String[] keyArray()
public java.lang.String[] keyArray(java.lang.String[] outgoing)
public double value(int index)
public java.lang.Iterable<java.lang.Double> values()
public java.util.Iterator<java.lang.Double> valueIterator()
public double[] valueArray()
public double[] valueArray(double[] array)
public double get(java.lang.String key)
public double get(java.lang.String key, double alternate)
public void set(java.lang.String key, double amount)
public void setIndex(int index, java.lang.String key, double value)
public boolean hasKey(java.lang.String key)
public void add(java.lang.String key, double amount)
public void sub(java.lang.String key, double amount)
public void mult(java.lang.String key, double amount)
public void div(java.lang.String key, double amount)
public int minIndex()
public java.lang.String minKey()
public double minValue()
public int maxIndex()
public java.lang.String maxKey()
public double maxValue()
public double sum()
public int index(java.lang.String what)
public double remove(java.lang.String key)
public double removeIndex(int index)
public void swap(int a, int b)
public void sortKeys()
public void sortKeysReverse()
public void sortValues()
public void sortValues(boolean stable)
stable
- public void sortValuesReverse()
public void sortValuesReverse(boolean stable)
public DoubleDict getPercent()
public DoubleDict copy()
public void print()
public void save(java.io.File file)
public void write(java.io.PrintWriter writer)
writer
- public java.lang.String toJSON()
public java.lang.String toString()
toString
in class java.lang.Object