Class ImmutableSortedSet.Builder<E>

Enclosing class:
ImmutableSortedSet<E>

public static final class ImmutableSortedSet.Builder<E> extends ImmutableSet.Builder<E>
A builder for creating immutable sorted set instances, especially public static final sets ("constant sets"), with a given comparator. Example:
public static final ImmutableSortedSet<Number> LUCKY_NUMBERS =
    new ImmutableSortedSet.Builder<Number>(ODDS_FIRST_COMPARATOR)
        .addAll(SINGLE_DIGIT_PRIMES)
        .add(42)
        .build();

Builder instances can be reused; it is safe to call build() multiple times to build multiple sets in series. Each set is a superset of the set created before it.

Since:
2.0
Author:
Jared Levy, Louis Wasserman
  • Constructor Details

  • Method Details

    • add

      @CanIgnoreReturnValue public ImmutableSortedSet.Builder<E> add(E element)
      Adds element to the ImmutableSortedSet. If the ImmutableSortedSet already contains element, then add has no effect. (only the previously added element is retained).
      Overrides:
      add in class ImmutableSet.Builder<E>
      Parameters:
      element - the element to add
      Returns:
      this Builder object
      Throws:
      NullPointerException - if element is null
    • add

      @CanIgnoreReturnValue public ImmutableSortedSet.Builder<E> add(E... elements)
      Adds each element of elements to the ImmutableSortedSet, ignoring duplicate elements (only the first duplicate element is added).
      Overrides:
      add in class ImmutableSet.Builder<E>
      Parameters:
      elements - the elements to add
      Returns:
      this Builder object
      Throws:
      NullPointerException - if elements contains a null element
    • addAll

      @CanIgnoreReturnValue public ImmutableSortedSet.Builder<E> addAll(Iterable<? extends E> elements)
      Adds each element of elements to the ImmutableSortedSet, ignoring duplicate elements (only the first duplicate element is added).
      Overrides:
      addAll in class ImmutableSet.Builder<E>
      Parameters:
      elements - the elements to add to the ImmutableSortedSet
      Returns:
      this Builder object
      Throws:
      NullPointerException - if elements contains a null element
    • addAll

      @CanIgnoreReturnValue public ImmutableSortedSet.Builder<E> addAll(Iterator<? extends E> elements)
      Adds each element of elements to the ImmutableSortedSet, ignoring duplicate elements (only the first duplicate element is added).
      Overrides:
      addAll in class ImmutableSet.Builder<E>
      Parameters:
      elements - the elements to add to the ImmutableSortedSet
      Returns:
      this Builder object
      Throws:
      NullPointerException - if elements contains a null element
    • build

      public ImmutableSortedSet<E> build()
      Returns a newly-created ImmutableSortedSet based on the contents of the Builder and its comparator.
      Overrides:
      build in class ImmutableSet.Builder<E>