Class TLongHashSet

java.lang.Object
gnu.trove.impl.hash.THash
gnu.trove.impl.hash.TPrimitiveHash
gnu.trove.impl.hash.TLongHash
gnu.trove.set.hash.TLongHashSet
All Implemented Interfaces:
TLongSet, TLongCollection, Externalizable, Serializable

public class TLongHashSet extends gnu.trove.impl.hash.TLongHash implements TLongSet, Externalizable
An open addressed set implementation for long primitives.
See Also:
  • Field Summary

    Fields inherited from class gnu.trove.impl.hash.TLongHash

    _set, consumeFreeSlot, no_entry_value

    Fields inherited from class gnu.trove.impl.hash.TPrimitiveHash

    _states, FREE, FULL, REMOVED

    Fields inherited from class gnu.trove.impl.hash.THash

    _autoCompactionFactor, _autoCompactRemovesRemaining, _autoCompactTemporaryDisable, _free, _loadFactor, _maxSize, _size, DEFAULT_CAPACITY, DEFAULT_LOAD_FACTOR
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new TLongHashSet instance with the default capacity and load factor.
    TLongHashSet(int initialCapacity)
    Creates a new TLongHashSet instance with a prime capacity equal to or greater than initialCapacity and with the default load factor.
    TLongHashSet(int initialCapacity, float load_factor)
    Creates a new TIntHash instance with a prime value at or near the specified capacity and load factor.
    TLongHashSet(int initial_capacity, float load_factor, long no_entry_value)
    Creates a new TLongHashSet instance with a prime capacity equal to or greater than initial_capacity and with the specified load factor.
    TLongHashSet(long[] array)
    Creates a new TLongHashSet instance containing the elements of array.
    Creates a new TLongHashSet instance that is a copy of the existing set.
    TLongHashSet(Collection<? extends Long> collection)
    Creates a new TLongHashSet instance that is a copy of the existing Collection.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    add(long val)
    Inserts a value into the set.
    boolean
    addAll(long[] array)
    Adds all of the elements in the array to the set.
    boolean
    addAll(TLongCollection collection)
    Adds all of the elements in the TLongCollection to the set.
    boolean
    addAll(Collection<? extends Long> collection)
    Adds all of the elements in collection to the set.
    void
    Empties the collection.
    boolean
    containsAll(long[] array)
    Tests the set to determine if all of the elements in array are present.
    boolean
    Tests the set to determine if all of the elements in TLongCollection are present.
    boolean
    containsAll(Collection<?> collection)
    Tests the set to determine if all of the elements in collection are present.
    boolean
    equals(Object other)
    Compares the specified object with this set for equality.
    int
    Returns the hash code value for this set.
    Creates an iterator over the values of the set.
    void
    protected void
    rehash(int newCapacity)
    Rehashes the set.
    boolean
    remove(long val)
    Removes entry from the set.
    boolean
    removeAll(long[] array)
    Removes all of the elements in array from the set.
    boolean
    Removes all of the elements in TLongCollection from the set.
    boolean
    removeAll(Collection<?> collection)
    Removes all of the elements in collection from the set.
    boolean
    retainAll(long[] array)
    Removes any values in the set which are not contained in array.
    boolean
    Removes any values in the set which are not contained in TLongCollection.
    boolean
    retainAll(Collection<?> collection)
    Removes any values in the set which are not contained in collection.
    long[]
    Returns an array containing all of the elements in this set.
    long[]
    toArray(long[] dest)
    Returns an array containing elements in this set.
    void

    Methods inherited from class gnu.trove.impl.hash.TLongHash

    contains, forEach, getNoEntryValue, index, insertKey, removeAt, setUp

    Methods inherited from class gnu.trove.impl.hash.TPrimitiveHash

    capacity

    Methods inherited from class gnu.trove.impl.hash.THash

    calculateGrownCapacity, compact, computeMaxSize, computeNextAutoCompactionAmount, ensureCapacity, getAutoCompactionFactor, isEmpty, postInsertHook, reenableAutoCompaction, setAutoCompactionFactor, size, tempDisableAutoCompaction, trimToSize

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface gnu.trove.set.TLongSet

    contains, forEach, getNoEntryValue, isEmpty, size
  • Constructor Details

    • TLongHashSet

      public TLongHashSet()
      Creates a new TLongHashSet instance with the default capacity and load factor.
    • TLongHashSet

      public TLongHashSet(int initialCapacity)
      Creates a new TLongHashSet instance with a prime capacity equal to or greater than initialCapacity and with the default load factor.
      Parameters:
      initialCapacity - an int value
    • TLongHashSet

      public TLongHashSet(int initialCapacity, float load_factor)
      Creates a new TIntHash instance with a prime value at or near the specified capacity and load factor.
      Parameters:
      initialCapacity - used to find a prime capacity for the table.
      load_factor - used to calculate the threshold over which rehashing takes place.
    • TLongHashSet

      public TLongHashSet(int initial_capacity, float load_factor, long no_entry_value)
      Creates a new TLongHashSet instance with a prime capacity equal to or greater than initial_capacity and with the specified load factor.
      Parameters:
      initial_capacity - an int value
      load_factor - a float value
      no_entry_value - a long value that represents null.
    • TLongHashSet

      public TLongHashSet(Collection<? extends Long> collection)
      Creates a new TLongHashSet instance that is a copy of the existing Collection.
      Parameters:
      collection - a Collection that will be duplicated.
    • TLongHashSet

      public TLongHashSet(TLongCollection collection)
      Creates a new TLongHashSet instance that is a copy of the existing set.
      Parameters:
      collection - a TLongSet that will be duplicated.
    • TLongHashSet

      public TLongHashSet(long[] array)
      Creates a new TLongHashSet instance containing the elements of array.
      Parameters:
      array - an array of long primitives
  • Method Details

    • iterator

      public TLongIterator iterator()
      Creates an iterator over the values of the set. The iterator supports element deletion.
      Specified by:
      iterator in interface TLongCollection
      Specified by:
      iterator in interface TLongSet
      Returns:
      an TLongIterator value
    • toArray

      public long[] toArray()
      Returns an array containing all of the elements in this set. If this set makes any guarantees as to what order its elements are returned by its iterator, this method must return the elements in the same order.

      The returned array will be "safe" in that no references to it are maintained by this set. (In other words, this method must allocate a new array even if this set is backed by an array). The caller is thus free to modify the returned array.

      This method acts as bridge between array-based and collection-based APIs.

      Specified by:
      toArray in interface TLongCollection
      Specified by:
      toArray in interface TLongSet
      Returns:
      an array containing all the elements in this set
    • toArray

      public long[] toArray(long[] dest)
      Returns an array containing elements in this set.

      If this set fits in the specified array with room to spare (i.e., the array has more elements than this set), the element in the array immediately following the end of the set is set to TLongSet.getNoEntryValue(). (This is useful in determining the length of this set only if the caller knows that this set does not contain any elements representing null.)

      If the native array is smaller than the set size, the array will be filled with elements in Iterator order until it is full and exclude the remainder.

      If this set makes any guarantees as to what order its elements are returned by its iterator, this method must return the elements in the same order.

      Specified by:
      toArray in interface TLongCollection
      Specified by:
      toArray in interface TLongSet
      Parameters:
      dest - the array into which the elements of this set are to be stored.
      Returns:
      an long[] containing all the elements in this set
    • add

      public boolean add(long val)
      Inserts a value into the set.
      Specified by:
      add in interface TLongCollection
      Specified by:
      add in interface TLongSet
      Parameters:
      val - a long value
      Returns:
      true if the set was modified by the add operation
    • remove

      public boolean remove(long val)
      Removes entry from the set.
      Specified by:
      remove in interface TLongCollection
      Specified by:
      remove in interface TLongSet
      Parameters:
      val - an long value
      Returns:
      true if the set was modified by the remove operation.
    • containsAll

      public boolean containsAll(Collection<?> collection)
      Tests the set to determine if all of the elements in collection are present.
      Specified by:
      containsAll in interface TLongCollection
      Specified by:
      containsAll in interface TLongSet
      Parameters:
      collection - a Collection value
      Returns:
      true if all elements were present in the set.
    • containsAll

      public boolean containsAll(TLongCollection collection)
      Tests the set to determine if all of the elements in TLongCollection are present.
      Specified by:
      containsAll in interface TLongCollection
      Specified by:
      containsAll in interface TLongSet
      Parameters:
      collection - a TLongCollection value
      Returns:
      true if all elements were present in the set.
    • containsAll

      public boolean containsAll(long[] array)
      Tests the set to determine if all of the elements in array are present.
      Specified by:
      containsAll in interface TLongCollection
      Specified by:
      containsAll in interface TLongSet
      Parameters:
      array - as array of long primitives.
      Returns:
      true if all elements were present in the set.
    • addAll

      public boolean addAll(Collection<? extends Long> collection)
      Adds all of the elements in collection to the set.
      Specified by:
      addAll in interface TLongCollection
      Specified by:
      addAll in interface TLongSet
      Parameters:
      collection - a Collection value
      Returns:
      true if the set was modified by the add all operation.
    • addAll

      public boolean addAll(TLongCollection collection)
      Adds all of the elements in the TLongCollection to the set.
      Specified by:
      addAll in interface TLongCollection
      Specified by:
      addAll in interface TLongSet
      Parameters:
      collection - a TLongCollection value
      Returns:
      true if the set was modified by the add all operation.
    • addAll

      public boolean addAll(long[] array)
      Adds all of the elements in the array to the set.
      Specified by:
      addAll in interface TLongCollection
      Specified by:
      addAll in interface TLongSet
      Parameters:
      array - a array of long primitives.
      Returns:
      true if the set was modified by the add all operation.
    • retainAll

      public boolean retainAll(Collection<?> collection)
      Removes any values in the set which are not contained in collection.
      Specified by:
      retainAll in interface TLongCollection
      Specified by:
      retainAll in interface TLongSet
      Parameters:
      collection - a Collection value
      Returns:
      true if the set was modified by the retain all operation
    • retainAll

      public boolean retainAll(TLongCollection collection)
      Removes any values in the set which are not contained in TLongCollection.
      Specified by:
      retainAll in interface TLongCollection
      Specified by:
      retainAll in interface TLongSet
      Parameters:
      collection - a TLongCollection value
      Returns:
      true if the set was modified by the retain all operation
    • retainAll

      public boolean retainAll(long[] array)
      Removes any values in the set which are not contained in array.
      Specified by:
      retainAll in interface TLongCollection
      Specified by:
      retainAll in interface TLongSet
      Parameters:
      array - an array of long primitives.
      Returns:
      true if the set was modified by the retain all operation
    • removeAll

      public boolean removeAll(Collection<?> collection)
      Removes all of the elements in collection from the set.
      Specified by:
      removeAll in interface TLongCollection
      Specified by:
      removeAll in interface TLongSet
      Parameters:
      collection - a Collection value
      Returns:
      true if the set was modified by the remove all operation.
    • removeAll

      public boolean removeAll(TLongCollection collection)
      Removes all of the elements in TLongCollection from the set.
      Specified by:
      removeAll in interface TLongCollection
      Specified by:
      removeAll in interface TLongSet
      Parameters:
      collection - a TLongCollection value
      Returns:
      true if the set was modified by the remove all operation.
    • removeAll

      public boolean removeAll(long[] array)
      Removes all of the elements in array from the set.
      Specified by:
      removeAll in interface TLongCollection
      Specified by:
      removeAll in interface TLongSet
      Parameters:
      array - an array of long primitives.
      Returns:
      true if the set was modified by the remove all operation.
    • clear

      public void clear()
      Empties the collection.
      Specified by:
      clear in interface TLongCollection
      Specified by:
      clear in interface TLongSet
      Overrides:
      clear in class gnu.trove.impl.hash.THash
    • rehash

      protected void rehash(int newCapacity)
      Rehashes the set.
      Specified by:
      rehash in class gnu.trove.impl.hash.THash
      Parameters:
      newCapacity - an int value
    • equals

      public boolean equals(Object other)
      Compares the specified object with this set for equality. Returns true if the specified object is also a set, the two sets have the same size, and every member of the specified set is contained in this set (or equivalently, every member of this set is contained in the specified set). This definition ensures that the equals method works properly across different implementations of the set interface.
      Specified by:
      equals in interface TLongCollection
      Specified by:
      equals in interface TLongSet
      Overrides:
      equals in class Object
      Parameters:
      other - object to be compared for equality with this set
      Returns:
      true if the specified object is equal to this set
    • hashCode

      public int hashCode()
      Returns the hash code value for this set. The hash code of a set is defined to be the sum of the hash codes of the elements in the set. This ensures that s1.equals(s2) implies that s1.hashCode()==s2.hashCode() for any two sets s1 and s2, as required by the general contract of Object.hashCode().
      Specified by:
      hashCode in interface TLongCollection
      Specified by:
      hashCode in interface TLongSet
      Overrides:
      hashCode in class Object
      Returns:
      the hash code value for this set
      See Also:
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • writeExternal

      public void writeExternal(ObjectOutput out) throws IOException
      Specified by:
      writeExternal in interface Externalizable
      Overrides:
      writeExternal in class gnu.trove.impl.hash.THash
      Throws:
      IOException
    • readExternal

      public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
      Specified by:
      readExternal in interface Externalizable
      Overrides:
      readExternal in class gnu.trove.impl.hash.THash
      Throws:
      IOException
      ClassNotFoundException