Class IntHashSet


  • public class IntHashSet
    extends IntSet
    Set of int values. This class is modelled on the java.net.Set interface, but it does not implement this interface, because the set members are nint's rather than Objects.

    Not thread safe.

    Author:
    Dominique Devienne, Michael Kay: retrofitted to JDK 1.4, added iterator()
    • Constructor Detail

      • IntHashSet

        public IntHashSet()
        Initializes a set with a capacity of 8 and a load factor of 0,25.
      • IntHashSet

        public IntHashSet​(int capacity)
        Initializes a set with the given capacity and a load factor of 0,25.
        Parameters:
        capacity - the initial capacity.
      • IntHashSet

        public IntHashSet​(int capacity,
                          int noDataValue)
        Initializes a set with a load factor of 0,25.
        Parameters:
        capacity - the initial capacity.
        noDataValue - the value to use for non-values.
    • Method Detail

      • copy

        public IntSet copy()
        Description copied from class: IntSet
        Create a copy of this IntSet that leaves the original unchanged.
        Specified by:
        copy in class IntSet
        Returns:
        an IntSet containing the same integers. The result will not necessarily be the same class as the original. It will either be an immutable object, or a newly constructed object.
      • mutableCopy

        public IntSet mutableCopy()
        Description copied from class: IntSet
        Create a copy of this IntSet that contains the same set of integers.
        Specified by:
        mutableCopy in class IntSet
        Returns:
        an IntSet containing the same integers. The result will not necessarily be the same class as the original. It will always be a mutable object
      • clear

        public void clear()
        Description copied from class: IntSet
        Clear the contents of the IntSet (making it an empty set)
        Specified by:
        clear in class IntSet
      • size

        public int size()
        Description copied from class: IntSet
        Get the number of integers in the set
        Specified by:
        size in class IntSet
        Returns:
        the size of the set
      • isEmpty

        public boolean isEmpty()
        Description copied from class: IntSet
        Determine if the set is empty
        Specified by:
        isEmpty in class IntSet
        Returns:
        true if the set is empty, false if not
      • getValues

        public int[] getValues()
      • contains

        public boolean contains​(int value)
        Description copied from class: IntSet
        Determine whether a particular integer is present in the set
        Specified by:
        contains in class IntSet
        Parameters:
        value - the integer under test
        Returns:
        true if value is present in the set, false if not
      • remove

        public boolean remove​(int value)
        Description copied from class: IntSet
        Remove an integer from the set
        Specified by:
        remove in class IntSet
        Parameters:
        value - the integer to be removed
        Returns:
        true if the integer was present in the set, false if it was not present
      • add

        public boolean add​(int value)
        Description copied from class: IntSet
        Add an integer to the set
        Specified by:
        add in class IntSet
        Parameters:
        value - the integer to be added
        Returns:
        true if the integer was added, false if it was already present
      • iterator

        public IntIterator iterator()
        Get an iterator over the values
        Specified by:
        iterator in class IntSet
        Returns:
        an iterator over the integers in the set
      • containsSome

        public static boolean containsSome​(IntSet one,
                                           IntSet two)
        Test if one set has overlapping membership with another set
        Parameters:
        one - the first set
        two - the second set
        Returns:
        true if the sets overlap
      • equals

        public boolean equals​(Object other)
        Test whether this set has exactly the same members as another set
        Overrides:
        equals in class Object
        Parameters:
        other - the other set
      • hashCode

        public int hashCode()
        Construct a hash key that supports the equals() test
        Overrides:
        hashCode in class Object
      • of

        public static IntHashSet of​(int... members)
        Create an IntHashSet with supplied integer members
        Parameters:
        members - the members to be added to the IntHashSet
        Returns:
        the IntHashSet containing these integer value