Class DoubleScatterSet

java.lang.Object
com.carrotsearch.hppc.DoubleHashSet
com.carrotsearch.hppc.DoubleScatterSet
All Implemented Interfaces:
DoubleCollection, DoubleContainer, DoubleLookupContainer, DoubleSet, Preallocable, Cloneable, Iterable<DoubleCursor>

@Generated(date="2024-05-16T08:18:11+0000", value="KTypeScatterSet.java") public class DoubleScatterSet extends DoubleHashSet
Same as DoubleHashSet but does not implement per-instance key mixing strategy and uses a simpler (faster) bit distribution function.

Note: read about important differences between hash and scatter sets.

See Also:
  • Constructor Details

    • DoubleScatterSet

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

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

      public DoubleScatterSet(int expectedElements, double loadFactor)
      New instance with sane defaults.
  • Method Details

    • hashKey

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

      public static DoubleScatterSet from(double... elements)
      Create a set from a variable number of arguments or an array of double. The elements are copied from the argument to the internal buffer.
    • removeAll

      public int removeAll(DoubleLookupContainer c)
      Default implementation uses a predicate for removal.
      Specified by:
      removeAll in interface DoubleCollection
      Returns:
      Returns the number of removed elements.
    • retainAll

      public int retainAll(DoubleLookupContainer c)
      Default implementation uses a predicate for retaining.
      Specified by:
      retainAll in interface DoubleCollection
      Returns:
      Returns the number of removed elements.
    • retainAll

      public int retainAll(DoublePredicate predicate)
      Default implementation redirects to DoubleCollection.removeAll(DoublePredicate) and negates the predicate.
      Specified by:
      retainAll in interface DoubleCollection
      Returns:
      Returns the number of removed elements.
    • toString

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