Class ObjectDoubleIdentityHashMap<KType>

java.lang.Object
com.carrotsearch.hppc.ObjectDoubleHashMap<KType>
com.carrotsearch.hppc.ObjectDoubleIdentityHashMap<KType>
All Implemented Interfaces:
ObjectDoubleAssociativeContainer<KType>, ObjectDoubleMap<KType>, Preallocable, Cloneable, Iterable<ObjectDoubleCursor<KType>>

@Generated(date="2023-09-14T00:00:00+0000", value="KTypeVTypeIdentityHashMap.java") public class ObjectDoubleIdentityHashMap<KType> extends ObjectDoubleHashMap<KType>
An identity hash map of Object to double.
  • Constructor Details

    • ObjectDoubleIdentityHashMap

      public ObjectDoubleIdentityHashMap()
      New instance with sane defaults.
    • ObjectDoubleIdentityHashMap

      public ObjectDoubleIdentityHashMap(int expectedElements)
      New instance with sane defaults.
      Parameters:
      expectedElements - The expected number of elements guaranteed not to cause buffer expansion (inclusive).
    • ObjectDoubleIdentityHashMap

      public ObjectDoubleIdentityHashMap(int expectedElements, double loadFactor)
      New instance with sane defaults.
      Parameters:
      expectedElements - The expected number of elements guaranteed not to cause buffer expansion (inclusive).
      loadFactor - The load factor for internal buffers. Insane load factors (zero, full capacity) are rejected by ObjectDoubleHashMap.verifyLoadFactor(double).
    • ObjectDoubleIdentityHashMap

      public ObjectDoubleIdentityHashMap(int expectedElements, double loadFactor, HashOrderMixingStrategy orderMixer)
      New instance with the provided defaults.
      Parameters:
      expectedElements - The expected number of elements guaranteed not to cause a rehash (inclusive).
      loadFactor - The load factor for internal buffers. Insane load factors (zero, full capacity) are rejected by ObjectDoubleHashMap.verifyLoadFactor(double).
      orderMixer - Hash key order mixing strategy. See HashOrderMixing for predefined implementations. Use constant mixers only if you understand the potential consequences.
    • ObjectDoubleIdentityHashMap

      public ObjectDoubleIdentityHashMap(ObjectDoubleAssociativeContainer<? extends KType> container)
      Create a hash map from all key-value pairs of another container.
  • Method Details

    • hashKey

      public int hashKey(KType key)
      Description copied from class: ObjectDoubleHashMap
      Returns a hash code for the given key.

      The default implementation mixes the hash of the key with ObjectDoubleHashMap.keyMixer to differentiate hash order of keys between hash containers. Helps alleviate problems resulting from linear conflict resolution in open addressing.

      The output from this function should evenly distribute keys across the entire integer range.

      Overrides:
      hashKey in class ObjectDoubleHashMap<KType>
    • equals

      public boolean equals(Object v1, Object v2)
      Overrides:
      equals in class ObjectDoubleHashMap<KType>
    • from

      public static <KType> ObjectDoubleIdentityHashMap<KType> from(KType[] keys, double[] values)
      Creates a hash map from two index-aligned arrays of key-value pairs.