Package org.hipparchus.util
Class OpenIntToDoubleHashMap
java.lang.Object
org.hipparchus.util.AbstractOpenIntHashMap
org.hipparchus.util.OpenIntToDoubleHashMap
- All Implemented Interfaces:
Serializable
Open addressed map from int to double.
This class provides a dedicated map from integers to doubles with a
much smaller memory overhead than standard java.util.Map
.
This class is not synchronized. The specialized iterators returned by
iterator()
are fail-fast: they throw a
ConcurrentModificationException
when they detect the map has been
modified during iteration.
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionclass
Iterator class for the map.Nested classes/interfaces inherited from class org.hipparchus.util.AbstractOpenIntHashMap
AbstractOpenIntHashMap.BaseIterator, AbstractOpenIntHashMap.InsertionHolder, AbstractOpenIntHashMap.ValueCopier
-
Field Summary
Fields inherited from class org.hipparchus.util.AbstractOpenIntHashMap
DEFAULT_EXPECTED_SIZE, RESIZE_MULTIPLIER
-
Constructor Summary
ConstructorDescriptionBuild an empty map with default size and using NaN for missing entries.OpenIntToDoubleHashMap
(double missingEntries) Build an empty map with default sizeOpenIntToDoubleHashMap
(int expectedSize) Build an empty map with specified size and using NaN for missing entries.OpenIntToDoubleHashMap
(int expectedSize, double missingEntries) Build an empty map with specified size.Copy constructor. -
Method Summary
Modifier and TypeMethodDescriptionboolean
double
get
(int key) Get the stored value associated with the given keyprotected int
growTable
(int oldIndex) Grow the tables.int
hashCode()
iterator()
Get an iterator over map elements.double
put
(int key, double value) Put a value associated with a key in the map.double
remove
(int key) Remove the value associated with a key.Methods inherited from class org.hipparchus.util.AbstractOpenIntHashMap
containsKey, containsKey, doGrowTable, doRemove, equalKeys, equalStates, getCapacity, getSize, keysStatesHashCode, locate, put, resetCount, size
-
Constructor Details
-
OpenIntToDoubleHashMap
public OpenIntToDoubleHashMap()Build an empty map with default size and using NaN for missing entries. -
OpenIntToDoubleHashMap
public OpenIntToDoubleHashMap(double missingEntries) Build an empty map with default size- Parameters:
missingEntries
- value to return when a missing entry is fetched
-
OpenIntToDoubleHashMap
public OpenIntToDoubleHashMap(int expectedSize) Build an empty map with specified size and using NaN for missing entries.- Parameters:
expectedSize
- expected number of elements in the map
-
OpenIntToDoubleHashMap
public OpenIntToDoubleHashMap(int expectedSize, double missingEntries) Build an empty map with specified size.- Parameters:
expectedSize
- expected number of elements in the mapmissingEntries
- value to return when a missing entry is fetched
-
OpenIntToDoubleHashMap
Copy constructor.- Parameters:
source
- map to copy
-
-
Method Details
-
get
public double get(int key) Get the stored value associated with the given key- Parameters:
key
- key associated with the data- Returns:
- data associated with the key
-
iterator
Get an iterator over map elements.The specialized iterators returned are fail-fast: they throw a
ConcurrentModificationException
when they detect the map has been modified during iteration.- Returns:
- iterator over the map elements
-
equals
-
hashCode
public int hashCode() -
remove
public double remove(int key) Remove the value associated with a key.- Parameters:
key
- key to which the value is associated- Returns:
- removed value
-
put
public double put(int key, double value) Put a value associated with a key in the map.- Parameters:
key
- key to which value is associatedvalue
- value to put in the map- Returns:
- previous value associated with the key
-
growTable
protected int growTable(int oldIndex) Grow the tables.- Specified by:
growTable
in classAbstractOpenIntHashMap
- Parameters:
oldIndex
- index the entry being inserted should have used- Returns:
- index the entry being inserted should really use
-