Class IntToIntHashMap

  • All Implemented Interfaces:
    IntToIntMap

    public class IntToIntHashMap
    extends java.lang.Object
    implements IntToIntMap
    A hash table that maps int keys to int values.
    • Constructor Summary

      Constructors 
      Constructor Description
      IntToIntHashMap()
      Initializes a map with a capacity of 8 and a load factor of 0,25.
      IntToIntHashMap​(int capacity)
      Initializes a map with the given capacity and a load factor of 0,25.
      IntToIntHashMap​(int capacity, double factor)
      Constructs a new map with initial capacity, and load factor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void clear()
      Clears the map.
      boolean find​(int key)
      Finds a key in the map.
      int get​(int key)
      Gets the value for this key.
      int getDefaultValue()
      Get the default value used to indicate an unused entry
      IntIterator keyIterator()
      Get an iterator over the integer key values held in the hash map
      void put​(int key, int value)
      Adds a key-value pair to the map.
      boolean remove​(int key)
      Removes a key from the map.
      void setDefaultValue​(int defaultValue)
      Set the value to be returned to indicate an unused entry
      int size()
      Gets the size of the map.
      java.lang.String toString()
      The toString() method on this class is designed for diagnostics only, and the output should not be regarded as stable between releases.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • IntToIntHashMap

        public IntToIntHashMap()
        Initializes a map with a capacity of 8 and a load factor of 0,25.
      • IntToIntHashMap

        public IntToIntHashMap​(int capacity)
        Initializes a map with the given capacity and a load factor of 0,25.
        Parameters:
        capacity - the initial capacity.
      • IntToIntHashMap

        public IntToIntHashMap​(int capacity,
                               double factor)
        Constructs a new map with initial capacity, and load factor.

        The capacity is the number of keys that can be mapped without resizing the arrays in which keys and values are stored. For efficiency, only a fraction of the elements in those arrays are used. That fraction is the specified load factor. The initial length of the arrays equals the smallest power of two not less than the ratio capacity/factor. The capacity of the map is increased, as necessary. The maximum number of keys that can be mapped is 2^30.

        Parameters:
        capacity - the initial capacity.
        factor - the load factor.
    • Method Detail

      • setDefaultValue

        public void setDefaultValue​(int defaultValue)
        Set the value to be returned to indicate an unused entry
        Specified by:
        setDefaultValue in interface IntToIntMap
        Parameters:
        defaultValue - the value to be returned by get(int) if no entry exists for the supplied key
      • getDefaultValue

        public int getDefaultValue()
        Get the default value used to indicate an unused entry
        Specified by:
        getDefaultValue in interface IntToIntMap
        Returns:
        the value to be returned by get(int) if no entry exists for the supplied key
      • clear

        public void clear()
        Clears the map.
        Specified by:
        clear in interface IntToIntMap
      • find

        public boolean find​(int key)
        Finds a key in the map.
        Specified by:
        find in interface IntToIntMap
        Parameters:
        key - Key
        Returns:
        true if the key is mapped
      • get

        public int get​(int key)
        Gets the value for this key.
        Specified by:
        get in interface IntToIntMap
        Parameters:
        key - Key
        Returns:
        the value, or the default value if not found.
      • size

        public int size()
        Gets the size of the map.
        Specified by:
        size in interface IntToIntMap
        Returns:
        the size
      • remove

        public boolean remove​(int key)
        Removes a key from the map.
        Specified by:
        remove in interface IntToIntMap
        Parameters:
        key - Key to remove
        Returns:
        true if the value was removed
      • put

        public void put​(int key,
                        int value)
        Adds a key-value pair to the map.
        Specified by:
        put in interface IntToIntMap
        Parameters:
        key - Key
        value - Value
      • keyIterator

        public IntIterator keyIterator()
        Get an iterator over the integer key values held in the hash map
        Specified by:
        keyIterator in interface IntToIntMap
        Returns:
        an iterator whose next() call returns the key values (in arbitrary order)
      • toString

        public java.lang.String toString()
        The toString() method on this class is designed for diagnostics only, and the output should not be regarded as stable between releases. Up to 100 key-value pairs are output in the format key:value, with comma separators, enclosed between braces: for example "{1:100,2:200}".
        Overrides:
        toString in class java.lang.Object
        Returns:
        A string representation of some of the key-value pairs