com.google.common.collect
Class ImmutableSet.Builder<E>

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

public static class ImmutableSet.Builder<E>
extends Object

A builder for creating immutable set instances, especially public static final sets ("constant sets").

Example:

public static final ImmutableSet<Color> GOOGLE_COLORS
       = new ImmutableSet.Builder<Color>()
           .addAll(WEBSAFE_COLORS)
           .add(new Color(0, 191, 255))
           .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.


Constructor Summary
ImmutableSet.Builder()
          Creates a new builder.
 
Method Summary
 ImmutableSet.Builder<E> add(E... elements)
          Adds each element of elements to the ImmutableSet, ignoring duplicate elements (only the first duplicate element is added).
 ImmutableSet.Builder<E> add(E element)
          Adds element to the ImmutableSet.
 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).
 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).
 ImmutableSet<E> build()
          Returns a newly-created ImmutableSet based on the contents of the Builder.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ImmutableSet.Builder

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

Method Detail

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).

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.