public class OpenIntDoubleHashMap extends AbstractIntDoubleMap
HashMap,
Serialized Form| Modifier and Type | Field and Description |
|---|---|
protected static byte |
FREE |
protected int |
freeEntries
The number of table entries in state==FREE.
|
protected static byte |
FULL |
protected static byte |
REMOVED |
protected byte[] |
state
The state of each hash table entry (FREE, FULL, REMOVED).
|
protected int[] |
table
The hash table keys.
|
protected double[] |
values
The hash table values.
|
defaultCapacity, defaultMaxLoadFactor, defaultMinLoadFactor, distinct, highWaterMark, lowWaterMark, maxLoadFactor, minLoadFactorserialVersionUID| Constructor and Description |
|---|
OpenIntDoubleHashMap()
Constructs an empty map with default capacity and default load factors.
|
OpenIntDoubleHashMap(int initialCapacity)
Constructs an empty map with the specified initial capacity and default load factors.
|
OpenIntDoubleHashMap(int initialCapacity,
double minLoadFactor,
double maxLoadFactor)
Constructs an empty map with
the specified initial capacity and the specified minimum and maximum load factor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
assign(AbstractIntDoubleMap other)
Clears the receiver, then adds all (key,value) pairs of othervalues to it.
|
void |
assign(DoubleFunction function)
Assigns the result of a function to each value; v[i] = function(v[i]).
|
void |
clear()
Removes all (key,value) associations from the receiver.
|
Object |
clone()
Returns a deep copy of the receiver.
|
boolean |
containsKey(int key)
Returns true if the receiver contains the specified key.
|
boolean |
containsValue(double 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(IntProcedure procedure)
Applies a procedure to each key of the receiver, if any.
|
boolean |
forEachPair(IntDoubleProcedure procedure)
Applies a procedure to each (key,value) pair of the receiver, if any.
|
double |
get(int key)
Returns the value associated with the specified key.
|
protected int |
indexOfInsertion(int key) |
protected int |
indexOfKey(int key) |
protected int |
indexOfValue(double value) |
int |
keyOf(double value)
Returns the first key the given value is associated with.
|
void |
keys(IntArrayList list)
Fills all keys contained in the receiver into the specified list.
|
void |
pairsMatching(IntDoubleProcedure condition,
IntArrayList keyList,
DoubleArrayList valueList)
Fills all pairs satisfying a given condition into the specified lists.
|
boolean |
put(int key,
double 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(int 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(DoubleArrayList list)
Fills all values contained in the receiver into the specified list.
|
copy, equals, keys, keysSortedByValue, pairsSortedByKey, pairsSortedByValue, toString, toStringByValue, valueschooseGrowCapacity, chooseHighWaterMark, chooseLowWaterMark, chooseMeanCapacity, chooseShrinkCapacity, isEmpty, nextPrime, sizeprotected int[] table
protected double[] values
protected byte[] state
protected int freeEntries
protected static final byte FREE
protected static final byte FULL
protected static final byte REMOVED
public OpenIntDoubleHashMap()
public OpenIntDoubleHashMap(int initialCapacity)
initialCapacity - the initial capacity of the map.IllegalArgumentException - if the initial capacity is less
than zero.public OpenIntDoubleHashMap(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).public void assign(DoubleFunction function)
assign in class AbstractIntDoubleMapfunction - a function object taking as argument the current association's value.public void assign(AbstractIntDoubleMap other)
assign in class AbstractIntDoubleMapother - the other map to be copied into the receiver.public void clear()
clear in class AbstractMappublic Object clone()
clone in class PersistentObjectpublic boolean containsKey(int key)
containsKey in class AbstractIntDoubleMappublic boolean containsValue(double value)
containsValue in class AbstractIntDoubleMappublic 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 AbstractMapminCapacity - the desired minimum capacity.public boolean forEachKey(IntProcedure procedure)
forEachKey in class AbstractIntDoubleMapprocedure - the procedure to be applied. Stops iteration if the procedure returns false, otherwise continues.public boolean forEachPair(IntDoubleProcedure procedure)
forEachKey(IntProcedure).forEachPair in class AbstractIntDoubleMapprocedure - the procedure to be applied. Stops iteration if the procedure returns false, otherwise continues.public double get(int key)
containsKey(int) 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 AbstractIntDoubleMapkey - the key to be searched for.protected int indexOfInsertion(int key)
key - the key to be added to the receiver.protected int indexOfKey(int key)
key - the key to be searched in the receiver.protected int indexOfValue(double value)
value - the value to be searched in the receiver.public int keyOf(double value)
containsValue(double) 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(IntProcedure).keyOf in class AbstractIntDoubleMapvalue - the value to search for.public void keys(IntArrayList list)
forEachKey(IntProcedure).
This method can be used to iterate over the keys of the receiver.
keys in class AbstractIntDoubleMaplist - the list to be filled, can have any size.public void pairsMatching(IntDoubleProcedure condition, IntArrayList keyList, DoubleArrayList valueList)
forEachKey(IntProcedure).
Example:
IntDoubleProcedure condition = new IntDoubleProcedure() { // match even keys only
public boolean apply(int key, double value) { return key%2==0; }
}
keys = (8,7,6), values = (1,2,2) --> keyList = (6,8), valueList = (2,1)
pairsMatching in class AbstractIntDoubleMapcondition - 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(int key,
double value)
put in class AbstractIntDoubleMapkey - the key the value shall be associated with.value - the value to be associated.protected void rehash(int newCapacity)
public boolean removeKey(int key)
removeKey in class AbstractIntDoubleMapkey - the key to be removed from the receiver.protected void setUp(int initialCapacity,
double minLoadFactor,
double maxLoadFactor)
setUp in class AbstractMapinitialCapacity - 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 AbstractMappublic void values(DoubleArrayList list)
forEachKey(IntProcedure).
This method can be used to iterate over the values of the receiver.
values in class AbstractIntDoubleMaplist - the list to be filled, can have any size.Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.