org.apache.commons.math3.util

## 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
  Version:
    $Id: OpenIntToDoubleHashMap.java 1244107 2012-02-14 16:17:55Z erans $
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `class` | `OpenIntToDoubleHashMap.Iterator` Iterator class for the map.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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

    Constructors
    Constructor and Description
    `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

    Methods
    Modifier and Type | Method and 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
    `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-2012 The Apache Software Foundation. All Rights Reserved.