|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.mahout.math.PersistentObject
org.apache.mahout.math.set.AbstractSet
org.apache.mahout.math.map.AbstractDoubleObjectMap<T>
org.apache.mahout.math.map.OpenDoubleObjectHashMap<T>
public class OpenDoubleObjectHashMap<T>
Field Summary |
---|
Fields inherited from class org.apache.mahout.math.set.AbstractSet |
---|
DEFAULT_CAPACITY, DEFAULT_MAX_LOAD_FACTOR, DEFAULT_MIN_LOAD_FACTOR, distinct, highWaterMark, lowWaterMark, maxLoadFactor, minLoadFactor |
Constructor Summary | |
---|---|
OpenDoubleObjectHashMap()
Constructs an empty map with default capacity and default load factors. |
|
OpenDoubleObjectHashMap(int initialCapacity)
Constructs an empty map with the specified initial capacity and default load factors. |
|
OpenDoubleObjectHashMap(int initialCapacity,
double minLoadFactor,
double maxLoadFactor)
Constructs an empty map with the specified initial capacity and the specified minimum and maximum load factor. |
Method Summary | |
---|---|
void |
clear()
Removes all (key,value) associations from the receiver. |
OpenDoubleObjectHashMap<T> |
clone()
Returns a deep copy of the receiver. |
boolean |
containsKey(double key)
Returns true if the receiver contains the specified key. |
boolean |
containsValue(T value)
Returns true if the receiver contains the specified value. |
void |
ensureCapacity(int minCapacity)
Ensures that the receiver can hold at least the specified number of associations without needing to allocate new internal memory. |
boolean |
forEachKey(DoubleProcedure procedure)
Applies a procedure to each key of the receiver, if any. |
boolean |
forEachPair(DoubleObjectProcedure<T> procedure)
Applies a procedure to each (key,value) pair of the receiver, if any. |
T |
get(double key)
Returns the value associated with the specified key. |
protected void |
getInternalFactors(int[] capacity,
double[] minLoadFactor,
double[] maxLoadFactor)
Access for unit tests. |
protected int |
indexOfInsertion(double key)
|
protected int |
indexOfKey(double key)
|
protected int |
indexOfValue(T value)
|
void |
keys(DoubleArrayList list)
Fills all keys contained in the receiver into the specified list. |
void |
pairsMatching(DoubleObjectProcedure<T> condition,
DoubleArrayList keyList,
List<T> valueList)
Fills all pairs satisfying a given condition into the specified lists. |
boolean |
put(double key,
T value)
Associates the given key with the given value. |
protected void |
rehash(int newCapacity)
Rehashes the contents of the receiver into a new table with a smaller or larger capacity. |
boolean |
removeKey(double key)
Removes the given key with its associated element from the receiver, if present. |
protected void |
setUp(int initialCapacity,
double minLoadFactor,
double maxLoadFactor)
Initializes the receiver. |
void |
trimToSize()
Trims the capacity of the receiver to be the receiver's current size. |
void |
values(List<T> list)
Fills all values contained in the receiver into the specified list. |
Methods inherited from class org.apache.mahout.math.map.AbstractDoubleObjectMap |
---|
copy, equals, hashCode, keys, keysSortedByValue, pairsSortedByKey, pairsSortedByValue, toString, toStringByValue, values |
Methods inherited from class org.apache.mahout.math.set.AbstractSet |
---|
chooseGrowCapacity, chooseHighWaterMark, chooseLowWaterMark, chooseMeanCapacity, chooseShrinkCapacity, equalsMindTheNull, isEmpty, nextPrime, size |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public OpenDoubleObjectHashMap()
public OpenDoubleObjectHashMap(int initialCapacity)
initialCapacity
- the initial capacity of the map.
IllegalArgumentException
- if the initial capacity is less than zero.public OpenDoubleObjectHashMap(int initialCapacity, double minLoadFactor, double maxLoadFactor)
initialCapacity
- the initial capacity.minLoadFactor
- the minimum load factor.maxLoadFactor
- the maximum load factor.
IllegalArgumentException
- if initialCapacity < 0 || (minLoadFactor < 0.0 || minLoadFactor >= 1.0) ||
(maxLoadFactor <= 0.0 || maxLoadFactor >= 1.0) || (minLoadFactor >=
maxLoadFactor).Method Detail |
---|
public void clear()
clear
in class AbstractSet
public OpenDoubleObjectHashMap<T> clone()
clone
in class PersistentObject
public boolean containsKey(double key)
containsKey
in class AbstractDoubleObjectMap<T>
public boolean containsValue(T value)
containsValue
in class AbstractDoubleObjectMap<T>
public void ensureCapacity(int minCapacity)
This method never need be called; it is for performance tuning only. Calling this method before put()ing a large number of associations boosts performance, because the receiver will grow only once instead of potentially many times and hash collisions get less probable.
ensureCapacity
in class AbstractSet
minCapacity
- the desired minimum capacity.public boolean forEachKey(DoubleProcedure procedure)
forEachKey
in class AbstractDoubleObjectMap<T>
procedure
- the procedure to be applied. Stops iteration if the procedure returns false, otherwise
continues.
public boolean forEachPair(DoubleObjectProcedure<T> procedure)
forEachKey(DoubleProcedure)
.
forEachPair
in class AbstractDoubleObjectMap<T>
procedure
- the procedure to be applied. Stops iteration if the procedure returns false, otherwise
continues.
public T get(double key)
get
in class AbstractDoubleObjectMap<T>
key
- the key to be searched for.
protected int indexOfInsertion(double key)
key
- the key to be added to the receiver.
protected int indexOfKey(double key)
key
- the key to be searched in the receiver.
protected int indexOfValue(T value)
value
- the value to be searched in the receiver.
public void keys(DoubleArrayList list)
forEachKey(DoubleProcedure)
. This method can be used to iterate over the keys of the receiver.
keys
in class AbstractDoubleObjectMap<T>
list
- the list to be filled, can have any size.public void pairsMatching(DoubleObjectProcedure<T> condition, DoubleArrayList keyList, List<T> valueList)
forEachKey(DoubleProcedure)
.
Example:
DoubleObjectProcedure condition = new DoubleObjectProcedure() { // match even keys only public boolean apply(double key, Object value) { return key%2==0; } } keys = (8,7,6), values = (1,2,2) --> keyList = (6,8), valueList = (2,1)
pairsMatching
in class AbstractDoubleObjectMap<T>
condition
- the condition to be matched. Takes the current key as first and the current value as second
argument.keyList
- the list to be filled with keys, can have any size.valueList
- the list to be filled with values, can have any size.public boolean put(double key, T value)
put
in class AbstractDoubleObjectMap<T>
key
- the key the value shall be associated with.value
- the value to be associated.
protected void rehash(int newCapacity)
public boolean removeKey(double key)
removeKey
in class AbstractDoubleObjectMap<T>
key
- the key to be removed from the receiver.
protected final void setUp(int initialCapacity, double minLoadFactor, double maxLoadFactor)
setUp
in class AbstractSet
initialCapacity
- the initial capacity of the receiver.minLoadFactor
- the minLoadFactor of the receiver.maxLoadFactor
- the maxLoadFactor of the receiver.
IllegalArgumentException
- if initialCapacity < 0 || (minLoadFactor < 0.0 || minLoadFactor >= 1.0) ||
(maxLoadFactor <= 0.0 || maxLoadFactor >= 1.0) || (minLoadFactor >=
maxLoadFactor).public void trimToSize()
trimToSize
in class AbstractSet
public void values(List<T> list)
This method can be used to iterate over the values of the receiver.
values
in class AbstractDoubleObjectMap<T>
list
- the list to be filled, can have any size.protected void getInternalFactors(int[] capacity, double[] minLoadFactor, double[] maxLoadFactor)
capacity
- minLoadFactor
- maxLoadFactor
-
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |