Package net.sf.saxon.z

## Interface IntSet

- All Known Implementing Classes:
    `IntArraySet`, `IntBlockSet`, `IntComplementSet`, `IntEmptySet`, `IntHashSet`, `IntRangeSet`, `IntSingletonSet`, `IntUniversalSet`, `MonotonicIntSet`

      public interface IntSet

  A set of integers represented as int values

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `add​(int value)` | Add an integer to the set
    `void` | `clear()` | Clear the contents of the IntSet (making it an empty set)
    `boolean` | `contains​(int value)` | Determine whether a particular integer is present in the set
    `default boolean` | `containsAll​(IntSet other)` | Test if this set is a superset of another set
    `IntSet` | `copy()` | Create a copy of this IntSet that leaves the original unchanged.
    `default IntSet` | `except​(IntSet other)` | Form a new set that is the difference of this set and another set.
    `default IntSet` | `intersect​(IntSet other)` | Form a new set that is the intersection of two IntSets.
    `boolean` | `isEmpty()` | Determine if the set is empty
    `default boolean` | `isMutable()` | Ask whether the set permits in-situ modifications using add() and remove()
    `IntIterator` | `iterator()` | Get an iterator over the values
    `IntSet` | `mutableCopy()` | Create a copy of this IntSet that contains the same set of integers.
    `boolean` | `remove​(int value)` | Remove an integer from the set
    `int` | `size()` | Get the number of integers in the set
    `default IntSet` | `union​(IntSet other)` | Form a new set that is the union of two IntSets.

- - ### Method Detail

    - #### copy

          IntSet copy()

      Create a copy of this IntSet that leaves the original unchanged.
      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

          IntSet mutableCopy()

      Create a copy of this IntSet that contains the same set of integers.
      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

    - #### isMutable

          default boolean isMutable()

      Ask whether the set permits in-situ modifications using add() and remove()

    - #### clear

          void clear()

      Clear the contents of the IntSet (making it an empty set)

    - #### size

          int size()

      Get the number of integers in the set
      Returns:
        the size of the set

    - #### isEmpty

          boolean isEmpty()

      Determine if the set is empty
      Returns:
        true if the set is empty, false if not

    - #### contains

          boolean contains​(int value)

      Determine whether a particular integer is present in the set
      Parameters:
        `value` - the integer under test
      Returns:
        true if value is present in the set, false if not

    - #### remove

          boolean remove​(int value)

      Remove an integer from the set
      Parameters:
        `value` - the integer to be removed
      Returns:
        true if the integer was present in the set, false if it was not present

    - #### add

          boolean add​(int value)

      Add an integer to the set
      Parameters:
        `value` - the integer to be added
      Returns:
        true if the integer was added, false if it was already present

    - #### iterator

          IntIterator iterator()

      Get an iterator over the values
      Returns:
        an iterator over the integers in the set

    - #### containsAll

          default boolean containsAll​(IntSet other)

      Test if this set is a superset of another set
      Parameters:
        `other` - the other set
      Returns:
        true if every item in the other set is also in this set

    - #### union

          default IntSet union​(IntSet other)

      Form a new set that is the union of two IntSets.
      Parameters:
        `other` - the second set
      Returns:
        the union of the two sets

    - #### intersect

          default IntSet intersect​(IntSet other)

      Form a new set that is the intersection of two IntSets.
      Parameters:
        `other` - the second set
      Returns:
        the intersection of the two sets

    - #### except

          default IntSet except​(IntSet other)

      Form a new set that is the difference of this set and another set. The result will either be an immutable object, or a newly constructed object.
      Parameters:
        `other` - the second set
      Returns:
        the intersection of the two sets