public static class ImmutableMultimap.Builder<K,V>
extends java.lang.Object
public static final
multimaps ("constant multimaps"). Example:
static final Multimap<String, Integer> STRING_TO_INTEGER_MULTIMAP =
new ImmutableMultimap.Builder<String, Integer>()
.put("one", 1)
.putAll("several", 1, 2, 3)
.putAll("many", 1, 2, 3, 4, 5)
.build();
Builder instances can be reused; it is safe to call build()
multiple times to build
multiple multimaps in series. Each multimap contains the key-value mappings in the previously
created multimaps.
Modifier and Type | Field and Description |
---|---|
(package private) java.util.Map<K,java.util.Collection<V>> |
builderMap |
(package private) java.util.Comparator<? super K> |
keyComparator |
(package private) java.util.Comparator<? super V> |
valueComparator |
Constructor and Description |
---|
Builder()
Creates a new builder.
|
Modifier and Type | Method and Description |
---|---|
ImmutableMultimap<K,V> |
build()
Returns a newly-created immutable multimap.
|
(package private) ImmutableMultimap.Builder<K,V> |
combine(ImmutableMultimap.Builder<K,V> other) |
(package private) java.util.Collection<V> |
newMutableValueCollection() |
ImmutableMultimap.Builder<K,V> |
orderKeysBy(java.util.Comparator<? super K> keyComparator)
Specifies the ordering of the generated multimap's keys.
|
ImmutableMultimap.Builder<K,V> |
orderValuesBy(java.util.Comparator<? super V> valueComparator)
Specifies the ordering of the generated multimap's values for each key.
|
ImmutableMultimap.Builder<K,V> |
put(K key,
V value)
Adds a key-value mapping to the built multimap.
|
ImmutableMultimap.Builder<K,V> |
put(java.util.Map.Entry<? extends K,? extends V> entry)
Adds an entry to the built multimap.
|
ImmutableMultimap.Builder<K,V> |
putAll(java.lang.Iterable<? extends java.util.Map.Entry<? extends K,? extends V>> entries)
Adds entries to the built multimap.
|
ImmutableMultimap.Builder<K,V> |
putAll(K key,
java.lang.Iterable<? extends V> values)
Stores a collection of values with the same key in the built multimap.
|
ImmutableMultimap.Builder<K,V> |
putAll(K key,
V... values)
Stores an array of values with the same key in the built multimap.
|
ImmutableMultimap.Builder<K,V> |
putAll(Multimap<? extends K,? extends V> multimap)
Stores another multimap's entries in the built multimap.
|
java.util.Comparator<? super K> keyComparator
java.util.Comparator<? super V> valueComparator
public Builder()
ImmutableMultimap.builder()
.java.util.Collection<V> newMutableValueCollection()
public ImmutableMultimap.Builder<K,V> put(K key, V value)
public ImmutableMultimap.Builder<K,V> put(java.util.Map.Entry<? extends K,? extends V> entry)
@Beta public ImmutableMultimap.Builder<K,V> putAll(java.lang.Iterable<? extends java.util.Map.Entry<? extends K,? extends V>> entries)
public ImmutableMultimap.Builder<K,V> putAll(K key, java.lang.Iterable<? extends V> values)
java.lang.NullPointerException
- if key
, values
, or any element in values
is null. The builder is left in an invalid state.public ImmutableMultimap.Builder<K,V> putAll(K key, V... values)
java.lang.NullPointerException
- if the key or any value is null. The builder is left in an
invalid state.public ImmutableMultimap.Builder<K,V> putAll(Multimap<? extends K,? extends V> multimap)
multimap.asMap()
view,
with new keys and values following any existing keys and values.java.lang.NullPointerException
- if any key or value in multimap
is null. The builder is
left in an invalid state.public ImmutableMultimap.Builder<K,V> orderKeysBy(java.util.Comparator<? super K> keyComparator)
public ImmutableMultimap.Builder<K,V> orderValuesBy(java.util.Comparator<? super V> valueComparator)
ImmutableMultimap.Builder<K,V> combine(ImmutableMultimap.Builder<K,V> other)
public ImmutableMultimap<K,V> build()