Class IntHashSet

  • All Implemented Interfaces:
    java.io.Serializable

    public class IntHashSet
    extends java.lang.Object
    implements java.io.Serializable
    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 int's rather than Objects.

    Not thread safe.

    Author:
    Dominique Devienne, Michael Kay: retrofitted to JDK 1.4, added iterator()
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int MAX_SIZE
      The maximum number of elements this container can contain.
      int ndv
      This set's NO-DATA-VALUE.
    • Constructor Summary

      Constructors 
      Constructor Description
      IntHashSet()
      Initializes a set with a capacity of 8 and a load factor of 0,25.
      IntHashSet​(int capacity)
      Initializes a set with the given capacity and a load factor of 0,25.
      IntHashSet​(int capacity, double factor, int noDataValue)
      Constructs a new set with initial capacity, and load factor.
      IntHashSet​(int capacity, int noDataValue)
      Initializes a set with a load factor of 0,25.
    • Field Detail

      • MAX_SIZE

        public static final int MAX_SIZE
        The maximum number of elements this container can contain.
        See Also:
        Constant Field Values
      • ndv

        public final int ndv
        This set's NO-DATA-VALUE.
    • Constructor Detail

      • IntHashSet

        public IntHashSet()
        Initializes a set with a capacity of 8 and a load factor of 0,25.
        See Also:
        IntHashSet(int,double,int)
      • IntHashSet

        public IntHashSet​(int capacity)
        Initializes a set with the given capacity and a load factor of 0,25.
        Parameters:
        capacity - the initial capacity.
        See Also:
        IntHashSet(int,double,int)
      • 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.
        See Also:
        IntHashSet(int,double,int)
      • IntHashSet

        public IntHashSet​(int capacity,
                          double factor,
                          int noDataValue)
        Constructs a new set with initial capacity, and load factor.

        The capacity is the number of keys that can be mapped without resizing the arrays in which keys and values are stored. For efficiency, only a fraction of the elements in those arrays are used. That fraction is the specified load factor. The initial length of the arrays equals the smallest power of two not less than the ratio capacity/factor. The capacity of the set is increased, as necessary. The maximum number of keys that can be mapped is 2^30.

        Parameters:
        capacity - the initial capacity.
        factor - the load factor.
        noDataValue - the value to use for non-values.
    • Method Detail

      • clear

        public void clear()
      • size

        public int size()
      • isEmpty

        public boolean isEmpty()
      • getFirst

        public int getFirst​(int defaultValue)
      • getValues

        public int[] getValues()
      • contains

        public boolean contains​(int value)
      • remove

        public boolean remove​(int value)
      • add

        public boolean add​(int value)
      • iterator

        public IntIterator iterator()
        Get an iterator over the values
      • union

        public IntHashSet union​(IntHashSet other)
        Form a new set that is the union of this set with another set.
      • intersect

        public IntHashSet intersect​(IntHashSet other)
        Form a new set that is the intersection of this set with another set.
      • except

        public IntHashSet except​(IntHashSet other)
        Form a new set that is the difference of this set with another set.
      • containsAll

        public boolean containsAll​(IntHashSet other)
        Test if this set is a superset of another set
      • containsSome

        public boolean containsSome​(IntHashSet other)
        Test if this set has overlapping membership with another set
      • equals

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

        public int hashCode()
        Construct a hash key that supports the equals() test
        Overrides:
        hashCode in class java.lang.Object