Class ImmutableSortedMultiset.Builder<E>

  • Enclosing class:
    ImmutableSortedMultiset<E>

    public static class ImmutableSortedMultiset.Builder<E>
    extends ImmutableMultiset.Builder<E>
    A builder for creating immutable multiset instances, especially public static final multisets ("constant multisets"). Example:
    
     public static final ImmutableSortedMultiset<Bean> BEANS =
         new ImmutableSortedMultiset.Builder<Bean>(colorComparator())
             .addCopies(Bean.COCOA, 4)
             .addCopies(Bean.GARDEN, 6)
             .addCopies(Bean.RED, 8)
             .addCopies(Bean.BLACK_EYED, 10)
             .build();
     

    Builder instances can be reused; it is safe to call build() multiple times to build multiple multisets in series.

    Since:
    12.0
    • Method Detail

      • addCopies

        public ImmutableSortedMultiset.Builder<EaddCopies​(E element,
                                                            int occurrences)
        Adds a number of occurrences of an element to this ImmutableSortedMultiset.
        Overrides:
        addCopies in class ImmutableMultiset.Builder<E>
        Parameters:
        element - the element to add
        occurrences - the number of occurrences of the element to add. May be zero, in which case no change will be made.
        Returns:
        this Builder object
        Throws:
        - if element is null
        - if occurrences is negative, or if this operation would result in more than occurrences of the element
      • setCount

        public ImmutableSortedMultiset.Builder<EsetCount​(E element,
                                                           int count)
        Adds or removes the necessary occurrences of an element such that the element attains the desired count.
        Overrides:
        setCount in class ImmutableMultiset.Builder<E>
        Parameters:
        element - the element to add or remove occurrences of
        count - the desired count of the element in this multiset
        Returns:
        this Builder object
        Throws:
        - if element is null
        - if count is negative
      • addAll

        public <? extends E> elements)
        Adds each element of elements to the ImmutableSortedMultiset.
        Overrides:
        addAll in class ImmutableMultiset.Builder<E>
        Parameters:
        elements - the Iterable to add to the ImmutableSortedMultiset
        Returns:
        this Builder object
        Throws:
        - if elements is null or contains a null element
      • addAll

        public <? extends E> elements)
        Adds each element of elements to the ImmutableSortedMultiset.
        Overrides:
        addAll in class ImmutableMultiset.Builder<E>
        Parameters:
        elements - the elements to add to the ImmutableSortedMultiset
        Returns:
        this Builder object
        Throws:
        - if elements is null or contains a null element