Class ImmutableSet.Builder<E>

java.lang.Object
com.google.common.collect.ImmutableCollection.Builder<E>
com.google.common.collect.ImmutableSet.Builder<E>
Direct Known Subclasses:
ImmutableSortedSet.Builder
Enclosing class:
ImmutableSet<E>

public static class ImmutableSet.Builder<E> extends ImmutableCollection.Builder<E>
A builder for creating ImmutableSet instances. Example:
   

   static final ImmutableSet<Color> GOOGLE_COLORS =
       ImmutableSet.<Color>builder()
           .addAll(WEBSAFE_COLORS)
           .add(new Color(0, 191, 255))
           .build();

Building does not change the state of the builder, so it is still possible to add more elements and to build again.

Since:
2.0
  • Constructor Details

    • Builder

      public Builder()
      Creates a new builder. The returned builder is equivalent to the builder generated by ImmutableSet.builder().
  • Method Details

    • add

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

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

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

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

      public ImmutableSet<E> build()
      Returns a newly-created ImmutableSet based on the contents of the Builder.
      Specified by:
      build in class ImmutableCollection.Builder<E>