Class 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 immutable set instances, especially public static final sets ("constant sets"). Example:
     {
            @code
    
            public static final ImmutableSet GOOGLE_COLORS = new ImmutableSet.Builder()
                            .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.

    Since:
    2.0 (imported from Google Collections Library)
    • Constructor Summary

      Constructors 
      Constructor Description
      Builder()
      Creates a new builder.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      ImmutableSet.Builder<E> add​(E element)
      Adds element to the ImmutableSet.
      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> addAll​(java.lang.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​(java.util.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

      • Builder

        public 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:
        java.lang.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:
        java.lang.NullPointerException - if elements is null or contains a null element
      • addAll

        public ImmutableSet.Builder<E> addAll​(java.lang.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:
        java.lang.NullPointerException - if elements is null or contains a null element
      • addAll

        public ImmutableSet.Builder<E> addAll​(java.util.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:
        java.lang.NullPointerException - if elements is null or contains a null element