Class LongObjectHashMap<V>

  • Type Parameters:
    V - The value type stored in the map.
    All Implemented Interfaces:
    LongObjectMap<V>, Map<Long,​V>

    public class LongObjectHashMap<V>
    extends Object
    implements LongObjectMap<V>
    A hash map implementation of LongObjectMap that uses open addressing for keys. To minimize the memory footprint, this class uses open addressing rather than chaining. Collisions are resolved using linear probing. Deletions implement compaction, so cost of remove can approach O(N) for full maps, which makes a small loadFactor recommended.
    • Field Detail

      • DEFAULT_CAPACITY

        public static final int DEFAULT_CAPACITY
        Default initial capacity. Used if not specified in the constructor
        See Also:
        Constant Field Values
      • DEFAULT_LOAD_FACTOR

        public static final float DEFAULT_LOAD_FACTOR
        Default load factor. Used if not specified in the constructor
        See Also:
        Constant Field Values
    • Constructor Detail

      • LongObjectHashMap

        public LongObjectHashMap()
      • LongObjectHashMap

        public LongObjectHashMap​(int initialCapacity)
      • LongObjectHashMap

        public LongObjectHashMap​(int initialCapacity,
                                 float loadFactor)
    • Method Detail

      • get

        public V get​(long key)
        Description copied from interface: LongObjectMap
        Gets the value in the map with the specified key.
        Specified by:
        get in interface LongObjectMap<V>
        Parameters:
        key - the key whose associated value is to be returned.
        Returns:
        the value or null if the key was not found in the map.
      • put

        public V put​(long key,
                     V value)
        Description copied from interface: LongObjectMap
        Puts the given entry into the map.
        Specified by:
        put in interface LongObjectMap<V>
        Parameters:
        key - the key of the entry.
        value - the value of the entry.
        Returns:
        the previous value for this key or null if there was no previous mapping.
      • putAll

        public void putAll​(Map<? extends Long,​? extends V> sourceMap)
        Specified by:
        putAll in interface Map<Long,​V>
      • remove

        public V remove​(long key)
        Description copied from interface: LongObjectMap
        Removes the entry with the specified key.
        Specified by:
        remove in interface LongObjectMap<V>
        Parameters:
        key - the key for the entry to be removed from this map.
        Returns:
        the previous value for the key, or null if there was no mapping.
      • size

        public int size()
        Specified by:
        size in interface Map<Long,​V>
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface Map<Long,​V>
      • clear

        public void clear()
        Specified by:
        clear in interface Map<Long,​V>
      • containsKey

        public boolean containsKey​(long key)
        Description copied from interface: LongObjectMap
        Indicates whether or not this map contains a value for the specified key.
        Specified by:
        containsKey in interface LongObjectMap<V>
      • put

        public V put​(Long key,
                     V value)
        Specified by:
        put in interface Map<Long,​V>
      • keyToString

        protected String keyToString​(long key)
        Helper method called by toString() in order to convert a single map key into a string. This is protected to allow subclasses to override the appearance of a given key.