Class ObjectIdentityHashSet<KType>

    • Constructor Detail

      • ObjectIdentityHashSet

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

        public ObjectIdentityHashSet​(int expectedElements)
        New instance with sane defaults.
      • ObjectIdentityHashSet

        public ObjectIdentityHashSet​(int expectedElements,
                                     double loadFactor)
        New instance with sane defaults.
      • ObjectIdentityHashSet

        public ObjectIdentityHashSet​(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 ObjectHashSet.verifyLoadFactor(double).
        orderMixer - Hash key order mixing strategy. See HashOrderMixing for predefined implementations. Use constant mixers only if you understand the potential consequences.
    • Method Detail

      • hashKey

        protected int hashKey​(KType key)
        Description copied from class: ObjectHashSet
        Returns a hash code for the given key. The default implementation mixes the hash of the key with ObjectHashSet.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 ObjectHashSet<KType>
      • equals

        protected boolean equals​(java.lang.Object v1,
                                 java.lang.Object v2)
      • from

        @SafeVarargs
        public static <KType> ObjectIdentityHashSet<KType> from​(KType... elements)
        Create a set from a variable number of arguments or an array of KType. The elements are copied from the argument to the internal buffer.
      • removeAll

        public int removeAll​(ObjectLookupContainer<? super KType> c)
        Default implementation uses a predicate for removal.
        Specified by:
        removeAll in interface ObjectCollection<KType>
        Returns:
        Returns the number of removed elements.
      • retainAll

        public int retainAll​(ObjectLookupContainer<? super KType> c)
        Default implementation uses a predicate for retaining.
        Specified by:
        retainAll in interface ObjectCollection<KType>
        Returns:
        Returns the number of removed elements.
      • toArray

        public <T> T[] toArray​(java.lang.Class<T> componentClass)
        Description copied from interface: ObjectContainer
        Copies all elements of this container to a dynamically created array of the given component type.
        Specified by:
        toArray in interface ObjectContainer<KType>
      • toString

        public java.lang.String toString()
        Convert the contents of this container to a human-friendly string.
        Overrides:
        toString in class java.lang.Object