Interface BooleanSet

All Superinterfaces:
BooleanCollection, BooleanIterable, Collection<Boolean>, Iterable<Boolean>, Set<Boolean>
All Known Implementing Classes:
AbstractBooleanSet, BooleanArraySet, BooleanOpenHashSet, BooleanSets.EmptySet, BooleanSets.Singleton, BooleanSets.SynchronizedSet, BooleanSets.UnmodifiableSet

public interface BooleanSet extends BooleanCollection, Set<Boolean>
A type-specific Set; provides some additional methods that use polymorphism to avoid (un)boxing.

Additionally, this interface strengthens (again) iterator().

See Also:
  • Method Details

    • iterator

      BooleanIterator iterator()
      Returns a type-specific iterator on the elements of this set.
      Specified by:
      iterator in interface BooleanCollection
      Specified by:
      iterator in interface BooleanIterable
      Specified by:
      iterator in interface Collection<Boolean>
      Specified by:
      iterator in interface Iterable<Boolean>
      Specified by:
      iterator in interface Set<Boolean>
      Returns:
      a type-specific iterator on the elements of this set.
      See Also:
      API Notes:
      This specification strengthens the one given in Iterable.iterator(), which was already strengthened in the corresponding type-specific class, but was weakened by the fact that this interface extends Set.

      Also, this is generally the only iterator method subclasses should override.

    • spliterator

      default BooleanSpliterator spliterator()
      Returns a type-specific spliterator on the elements of this set.

      Set spliterators must report at least Spliterator.DISTINCT.

      See Set.spliterator() for more documentation on the requirements of the returned spliterator.

      Specified by:
      spliterator in interface BooleanCollection
      Specified by:
      spliterator in interface BooleanIterable
      Specified by:
      spliterator in interface Collection<Boolean>
      Specified by:
      spliterator in interface Iterable<Boolean>
      Specified by:
      spliterator in interface Set<Boolean>
      Returns:
      a type-specific spliterator on the elements of this collection.
      Since:
      8.5.0
      API Notes:
      This specification strengthens the one given in Collection.spliterator(), which was already strengthened in the corresponding type-specific class, but was weakened by the fact that this interface extends Set.

      Also, this is generally the only spliterator method subclasses should override.

      Implementation Specification:
      The default implementation returns a late-binding spliterator (see Spliterator for documentation on what binding policies mean) that wraps this instance's type specific iterator().

      Additionally, it reports Spliterator.SIZED and Spliterator.DISTINCT.

      Implementation Notes:
      As this default implementation wraps the iterator, and Iterator is an inherently linear API, the returned spliterator will yield limited performance gains when run in parallel contexts, as the returned spliterator's trySplit() will have linear runtime.
    • remove

      boolean remove(boolean k)
      Removes an element from this set.
      See Also:
      API Notes:
      Note that the corresponding method of a type-specific collection is rem(). This unfortunate situation is caused by the clash with the similarly named index-based method in the List interface.
    • remove

      @Deprecated default boolean remove(Object o)
      Deprecated.
      Please use the corresponding type-specific method instead.
      Specified by:
      remove in interface BooleanCollection
      Specified by:
      remove in interface Collection<Boolean>
      Specified by:
      remove in interface Set<Boolean>
    • add

      @Deprecated default boolean add(Boolean o)
      Deprecated.
      Please use the corresponding type-specific method instead.
      Specified by:
      add in interface BooleanCollection
      Specified by:
      add in interface Collection<Boolean>
      Specified by:
      add in interface Set<Boolean>
    • contains

      @Deprecated default boolean contains(Object o)
      Deprecated.
      Please use the corresponding type-specific method instead.
      Specified by:
      contains in interface BooleanCollection
      Specified by:
      contains in interface Collection<Boolean>
      Specified by:
      contains in interface Set<Boolean>
    • rem

      @Deprecated default boolean rem(boolean k)
      Deprecated.
      Please use remove() instead.
      Removes an element from this set.

      This method is inherited from the type-specific collection this type-specific set is based on, but it should not used as this interface reinstates remove() as removal method.

      Specified by:
      rem in interface BooleanCollection
      See Also:
    • of

      static BooleanSet of()
      Returns an immutable empty set.
      Returns:
      an immutable empty set.
    • of

      static BooleanSet of(boolean e)
      Returns an immutable set with the element given.
      Parameters:
      e - an element.
      Returns:
      an immutable set containing e.
    • of

      static BooleanSet of(boolean e0, boolean e1)
      Returns an immutable set with the elements given.
      Parameters:
      e0 - the first element.
      e1 - the second element.
      Returns:
      an immutable set containing e0 and e1.
      Throws:
      IllegalArgumentException - if there were duplicate entries.
    • of

      static BooleanSet of(boolean e0, boolean e1, boolean e2)
      Returns an immutable set with the elements given.
      Parameters:
      e0 - the first element.
      e1 - the second element.
      e2 - the third element.
      Returns:
      an immutable set containing e0, e1, and e2.
      Throws:
      IllegalArgumentException - if there were duplicate entries.
    • of

      static BooleanSet of(boolean... a)
      Returns an immutable list with the elements given.
      Parameters:
      a - the list of elements that will be in the final set.
      Returns:
      an immutable set containing the elements in a.
      Throws:
      IllegalArgumentException - if there are any duplicate entries.