Class OpenIntToDoubleHashMap

java.lang.Object
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
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    class 
    Iterator class for the map.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected static final byte
    Status indicator for free table entries.
    protected static final byte
    Status indicator for full table entries.
    protected static final byte
    Status indicator for removed table entries.
  • Constructor Summary

    Constructors
    Constructor
    Description
    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.
    Copy constructor.
  • Method Summary

    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 key
    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
    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 Details

    • FREE

      protected static final byte FREE
      Status indicator for free table entries.
      See Also:
    • FULL

      protected static final byte FULL
      Status indicator for full table entries.
      See Also:
    • REMOVED

      protected static final byte REMOVED
      Status indicator for removed table entries.
      See Also:
  • 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 map
      missingEntries - value to return when a missing entry is fetched
    • OpenIntToDoubleHashMap

      public OpenIntToDoubleHashMap(OpenIntToDoubleHashMap source)
      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
    • 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

      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