Package org.apache.commons.math.util
Class OpenIntToDoubleHashMap
- java.lang.Object
-
- org.apache.commons.math.util.OpenIntToDoubleHashMap
-
- All Implemented Interfaces:
java.io.Serializable
public class OpenIntToDoubleHashMap extends java.lang.Object implements java.io.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 aConcurrentModificationException
when they detect the map has been modified during iteration.- Since:
- 2.0
- Version:
- $Revision: 990655 $ $Date: 2010-08-29 23:49:40 +0200 (dim. 29 août 2010) $
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
OpenIntToDoubleHashMap.Iterator
Iterator class for the map.
-
Constructor Summary
Constructors Constructor Description OpenIntToDoubleHashMap()
Build 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.OpenIntToDoubleHashMap(OpenIntToDoubleHashMap source)
Copy constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
containsKey(int key)
Check if a value is associated with a key.double
get(int key)
Get the stored value associated with the given keyOpenIntToDoubleHashMap.Iterator
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.int
size()
Get the number of elements stored in the map.
-
-
-
Field Detail
-
FREE
protected static final byte FREE
Status indicator for free table entries.- See Also:
- Constant Field Values
-
FULL
protected static final byte FULL
Status indicator for full table entries.- See Also:
- Constant Field Values
-
REMOVED
protected static final byte REMOVED
Status indicator for removed table entries.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
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
public OpenIntToDoubleHashMap(OpenIntToDoubleHashMap source)
Copy constructor.- Parameters:
source
- map to copy
-
-
Method Detail
-
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
-
containsKey
public boolean containsKey(int key)
Check if a value is associated with a key.- Parameters:
key
- key to check- Returns:
- true if a value is associated with key
-
iterator
public OpenIntToDoubleHashMap.Iterator 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
-
size
public int size()
Get the number of elements stored in the map.- Returns:
- number of elements stored in the map
-
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
-
-