Class IdentityMap<K,V>

java.lang.Object
org.hibernate.internal.util.collections.IdentityMap<K,V>
All Implemented Interfaces:
Map<K,V>

public final class IdentityMap<K,V> extends Object implements Map<K,V>
A Map where keys are compared by object identity, rather than equals().
  • Method Details

    • instantiateSequenced

      public static <K, V> IdentityMap<K,V> instantiateSequenced(int size)
      Return a new instance of this class, with iteration order defined as the order in which entries were added
      Parameters:
      size - The size of the map to create
      Returns:
      The map
    • concurrentEntries

      public static <K, V> Map.Entry<K,V>[] concurrentEntries(Map<K,V> map)
      Return the map entries (as instances of Map.Entry in a collection that is safe from concurrent modification). ie. we may safely add new instances to the underlying Map during iteration of the entries().
      Parameters:
      map - The map of entries
      Returns:
      Collection
    • onEachKey

      public static <K, V> void onEachKey(Map<K,V> map, Consumer<K> consumer)
    • forEach

      public void forEach(BiConsumer<? super K,? super V> action)
      Override MapforEach(BiConsumer) to provide a more efficient implementation
      Specified by:
      forEach in interface Map<K,V>
      Parameters:
      action - the operation to apply to each element
    • keyIterator

      public Iterator<K> keyIterator()
    • size

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

      public boolean isEmpty()
      Specified by:
      isEmpty in interface Map<K,V>
    • containsKey

      public boolean containsKey(Object key)
      Specified by:
      containsKey in interface Map<K,V>
    • containsValue

      public boolean containsValue(Object val)
      Specified by:
      containsValue in interface Map<K,V>
    • get

      public V get(Object key)
      Specified by:
      get in interface Map<K,V>
    • put

      public V put(K key, V value)
      Specified by:
      put in interface Map<K,V>
    • remove

      public V remove(Object key)
      Specified by:
      remove in interface Map<K,V>
    • putAll

      public void putAll(Map<? extends K,? extends V> otherMap)
      Specified by:
      putAll in interface Map<K,V>
    • clear

      public void clear()
      Specified by:
      clear in interface Map<K,V>
    • keySet

      public Set<K> keySet()
      Specified by:
      keySet in interface Map<K,V>
    • values

      public Collection<V> values()
      Specified by:
      values in interface Map<K,V>
    • entrySet

      public Set<Map.Entry<K,V>> entrySet()
      Specified by:
      entrySet in interface Map<K,V>
    • entryArray

      public Map.Entry<K,V>[] entryArray()
    • toString

      public String toString()
      Overrides:
      toString in class Object