|
Colt 1.2.0 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object cern.colt.PersistentObject cern.colt.map.AbstractMap cern.colt.map.AbstractDoubleIntMap cern.colt.map.OpenDoubleIntHashMap
Hash map holding (key,value) associations of type (double-->int); Automatically grows and shrinks as needed; Implemented using open addressing with double hashing. First see the package summary and javadoc tree view to get the broad picture. Overrides many methods for performance reasons only.
HashMap
,
Serialized FormField Summary |
Fields inherited from class cern.colt.PersistentObject |
serialVersionUID |
Constructor Summary | |
OpenDoubleIntHashMap()
Constructs an empty map with default capacity and default load factors. |
|
OpenDoubleIntHashMap(int initialCapacity)
Constructs an empty map with the specified initial capacity and default load factors. |
|
OpenDoubleIntHashMap(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. |
Object |
clone()
Returns a deep copy of the receiver. |
boolean |
containsKey(double key)
Returns true if the receiver contains the specified key. |
boolean |
containsValue(int 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(DoubleIntProcedure procedure)
Applies a procedure to each (key,value) pair of the receiver, if any. |
int |
get(double key)
Returns the value associated with the specified key. |
double |
keyOf(int value)
Returns the first key the given value is associated with. |
void |
keys(DoubleArrayList list)
Fills all keys contained in the receiver into the specified list. |
void |
pairsMatching(DoubleIntProcedure condition,
DoubleArrayList keyList,
IntArrayList valueList)
Fills all pairs satisfying a given condition into the specified lists. |
boolean |
put(double key,
int value)
Associates the given key with the given value. |
boolean |
removeKey(double key)
Removes the given key with its associated element from the receiver, if present. |
void |
trimToSize()
Trims the capacity of the receiver to be the receiver's current size. |
void |
values(IntArrayList list)
Fills all values contained in the receiver into the specified list. |
Methods inherited from class cern.colt.map.AbstractDoubleIntMap |
copy, equals, keys, keysSortedByValue, pairsSortedByKey, pairsSortedByValue, toString, toStringByValue, values |
Methods inherited from class cern.colt.map.AbstractMap |
isEmpty, size |
Methods inherited from class java.lang.Object |
getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public OpenDoubleIntHashMap()
public OpenDoubleIntHashMap(int initialCapacity)
initialCapacity
- the initial capacity of the map.
IllegalArgumentException
- if the initial capacity is less
than zero.public OpenDoubleIntHashMap(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 AbstractMap
public Object clone()
clone
in class PersistentObject
public boolean containsKey(double key)
containsKey
in class AbstractDoubleIntMap
public boolean containsValue(int value)
containsValue
in class AbstractDoubleIntMap
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 AbstractMap
minCapacity
- the desired minimum capacity.public boolean forEachKey(DoubleProcedure procedure)
forEachKey
in class AbstractDoubleIntMap
procedure
- the procedure to be applied. Stops iteration if the procedure returns false, otherwise continues.
public boolean forEachPair(DoubleIntProcedure procedure)
forEachKey(DoubleProcedure)
.
forEachPair
in class AbstractDoubleIntMap
procedure
- the procedure to be applied. Stops iteration if the procedure returns false, otherwise continues.
public int get(double key)
containsKey(double)
whether the given key has a value associated or not, i.e. whether there exists an association for the given key or not.
get
in class AbstractDoubleIntMap
key
- the key to be searched for.
public double keyOf(int value)
containsValue(int)
whether there exists an association from a key to this value.
Search order is guaranteed to be identical to the order used by method forEachKey(DoubleProcedure)
.
keyOf
in class AbstractDoubleIntMap
value
- the value to search for.
public void keys(DoubleArrayList list)
forEachKey(DoubleProcedure)
.
This method can be used to iterate over the keys of the receiver.
keys
in class AbstractDoubleIntMap
list
- the list to be filled, can have any size.public void pairsMatching(DoubleIntProcedure condition, DoubleArrayList keyList, IntArrayList valueList)
forEachKey(DoubleProcedure)
.
Example:
DoubleIntProcedure condition = new DoubleIntProcedure() { // match even values only public boolean apply(double key, int value) { return value%2==0; } } keys = (8,7,6), values = (1,2,2) --> keyList = (6,8), valueList = (2,1)
pairsMatching
in class AbstractDoubleIntMap
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, int value)
put
in class AbstractDoubleIntMap
key
- the key the value shall be associated with.value
- the value to be associated.
public boolean removeKey(double key)
removeKey
in class AbstractDoubleIntMap
key
- the key to be removed from the receiver.
public void trimToSize()
trimToSize
in class AbstractMap
public void values(IntArrayList list)
forEachKey(DoubleProcedure)
.
This method can be used to iterate over the values of the receiver.
values
in class AbstractDoubleIntMap
list
- the list to be filled, can have any size.
|
Colt 1.2.0 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |