Class ImmutableMultiset.Builder<E>
java.lang.Object
com.google.common.collect.ImmutableCollection.Builder<E>
com.google.common.collect.ImmutableMultiset.Builder<E>
- Direct Known Subclasses:
ImmutableSortedMultiset.Builder
- Enclosing class:
ImmutableMultiset<E>
A builder for creating immutable multiset instances, especially
public static final
multisets ("constant multisets"). Example:
public static final ImmutableMultiset<Bean> BEANS =
new ImmutableMultiset.Builder<Bean>()
.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:
- 2.0
- Author:
- Jared Levy, Louis Wasserman
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAddselementto theImmutableMultiset.Adds each element ofelementsto theImmutableMultiset.Adds each element ofelementsto theImmutableMultiset.Adds each element ofelementsto theImmutableMultiset.Adds a number of occurrences of an element to thisImmutableMultiset.build()Returns a newly-createdImmutableMultisetbased on the contents of theBuilder.Adds or removes the necessary occurrences of an element such that the element attains the desired count.
-
Constructor Details
-
Builder
public Builder()Creates a new builder. The returned builder is equivalent to the builder generated byImmutableMultiset.builder().
-
-
Method Details
-
add
Addselementto theImmutableMultiset.- Specified by:
addin classImmutableCollection.Builder<E>- Parameters:
element- the element to add- Returns:
- this
Builderobject - Throws:
NullPointerException- ifelementis null
-
add
Adds each element ofelementsto theImmutableMultiset.- Overrides:
addin classImmutableCollection.Builder<E>- Parameters:
elements- the elements to add- Returns:
- this
Builderobject - Throws:
NullPointerException- ifelementsis null or contains a null element
-
addCopies
Adds a number of occurrences of an element to thisImmutableMultiset.- Parameters:
element- the element to addoccurrences- the number of occurrences of the element to add. May be zero, in which case no change will be made.- Returns:
- this
Builderobject - Throws:
NullPointerException- ifelementis nullIllegalArgumentException- ifoccurrencesis negative, or if this operation would result in more thanInteger.MAX_VALUEoccurrences of the element
-
setCount
Adds or removes the necessary occurrences of an element such that the element attains the desired count.- Parameters:
element- the element to add or remove occurrences ofcount- the desired count of the element in this multiset- Returns:
- this
Builderobject - Throws:
NullPointerException- ifelementis nullIllegalArgumentException- ifcountis negative
-
addAll
Adds each element ofelementsto theImmutableMultiset.- Overrides:
addAllin classImmutableCollection.Builder<E>- Parameters:
elements- theIterableto add to theImmutableMultiset- Returns:
- this
Builderobject - Throws:
NullPointerException- ifelementsis null or contains a null element
-
addAll
Adds each element ofelementsto theImmutableMultiset.- Overrides:
addAllin classImmutableCollection.Builder<E>- Parameters:
elements- the elements to add to theImmutableMultiset- Returns:
- this
Builderobject - Throws:
NullPointerException- ifelementsis null or contains a null element
-
build
Returns a newly-createdImmutableMultisetbased on the contents of theBuilder.- Specified by:
buildin classImmutableCollection.Builder<E>
-