org.apache.commons.math3.util
Class OpenIntToDoubleHashMap

java.lang.Object
  extended by org.apache.commons.math3.util.OpenIntToDoubleHashMap
All Implemented Interfaces:
Serializable

public class OpenIntToDoubleHashMap
extends Object
implements 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.

Since:
2.0
Version:
$Id: OpenIntToDoubleHashMap.java 1421448 2012-12-13 19:45:57Z tn $
See Also:
Serialized Form

Nested Class Summary
 class OpenIntToDoubleHashMap.Iterator
          Iterator class for the map.
 
Field Summary
protected static byte FREE
          Status indicator for free table entries.
protected static byte FULL
          Status indicator for full table entries.
protected static byte REMOVED
          Status indicator for removed table entries.
 
Constructor Summary
OpenIntToDoubleHashMap()
          Build an empty map with default size and using NaN for missing entries.
OpenIntToDoubleHashMap(double missingEntries)
          Build an empty map with default size
OpenIntToDoubleHashMap(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
 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 key
 OpenIntToDoubleHashMap.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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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 map
missingEntries - 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 associated
value - value to put in the map
Returns:
previous value associated with the key


Copyright © 2003-2013 The Apache Software Foundation. All Rights Reserved.