Class ImmutableListMultimap.Builder<K,V>
java.lang.Object
com.google.common.collect.ImmutableMultimap.Builder<K,V>
com.google.common.collect.ImmutableListMultimap.Builder<K,V>
- Enclosing class:
ImmutableListMultimap<K,
V>
A builder for creating immutable
ListMultimap
instances, especially public
static final
multimaps ("constant multimaps"). Example:
static final Multimap<String, Integer> STRING_TO_INTEGER_MULTIMAP =
new ImmutableListMultimap.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.
- Since:
- 2.0
- Author:
- Jared Levy
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbuild()
Returns a newly-created immutable list multimap.expectedValuesPerKey
(int expectedValuesPerKey) Provides a hint for how many values will be associated with each key newly added to the builder after this call.orderKeysBy
(Comparator<? super K> keyComparator) Specifies the ordering of the generated multimap's keys.orderValuesBy
(Comparator<? super V> valueComparator) Specifies the ordering of the generated multimap's values for each key.Adds an entry to the built multimap.Adds a key-value mapping to the built multimap.Stores another multimap's entries in the built multimap.Adds entries to the built multimap.Stores a collection of values with the same key in the built multimap.Stores an array of values with the same key in the built multimap.
-
Constructor Details
-
Builder
public Builder()Creates a new builder. The returned builder is equivalent to the builder generated byImmutableListMultimap.builder()
.
-
-
Method Details
-
expectedValuesPerKey
@CanIgnoreReturnValue public ImmutableListMultimap.Builder<K,V> expectedValuesPerKey(int expectedValuesPerKey) Provides a hint for how many values will be associated with each key newly added to the builder after this call. This does not change semantics, but may improve performance ifexpectedValuesPerKey
is a good estimate.This may be called more than once; each newly added key will use the most recent call to
ImmutableMultimap.Builder.expectedValuesPerKey
as its hint.- Overrides:
expectedValuesPerKey
in classImmutableMultimap.Builder<K,
V> - Since:
- 33.3.0
-
put
Description copied from class:ImmutableMultimap.Builder
Adds a key-value mapping to the built multimap.- Overrides:
put
in classImmutableMultimap.Builder<K,
V>
-
put
@CanIgnoreReturnValue public ImmutableListMultimap.Builder<K,V> put(Map.Entry<? extends K, ? extends V> entry) Adds an entry to the built multimap.- Overrides:
put
in classImmutableMultimap.Builder<K,
V> - Since:
- 11.0
-
putAll
@CanIgnoreReturnValue public ImmutableListMultimap.Builder<K,V> putAll(Iterable<? extends Map.Entry<? extends K, ? extends V>> entries) Adds entries to the built multimap.- Overrides:
putAll
in classImmutableMultimap.Builder<K,
V> - Since:
- 19.0
-
putAll
@CanIgnoreReturnValue public ImmutableListMultimap.Builder<K,V> putAll(K key, Iterable<? extends V> values) Description copied from class:ImmutableMultimap.Builder
Stores a collection of values with the same key in the built multimap.- Overrides:
putAll
in classImmutableMultimap.Builder<K,
V>
-
putAll
Description copied from class:ImmutableMultimap.Builder
Stores an array of values with the same key in the built multimap.- Overrides:
putAll
in classImmutableMultimap.Builder<K,
V>
-
putAll
@CanIgnoreReturnValue public ImmutableListMultimap.Builder<K,V> putAll(Multimap<? extends K, ? extends V> multimap) Description copied from class:ImmutableMultimap.Builder
Stores another multimap's entries in the built multimap. The generated multimap's key and value orderings correspond to the iteration ordering of themultimap.asMap()
view, with new keys and values following any existing keys and values.- Overrides:
putAll
in classImmutableMultimap.Builder<K,
V>
-
orderKeysBy
@CanIgnoreReturnValue public ImmutableListMultimap.Builder<K,V> orderKeysBy(Comparator<? super K> keyComparator) Specifies the ordering of the generated multimap's keys.- Overrides:
orderKeysBy
in classImmutableMultimap.Builder<K,
V> - Since:
- 8.0
-
orderValuesBy
@CanIgnoreReturnValue public ImmutableListMultimap.Builder<K,V> orderValuesBy(Comparator<? super V> valueComparator) Specifies the ordering of the generated multimap's values for each key.- Overrides:
orderValuesBy
in classImmutableMultimap.Builder<K,
V> - Since:
- 8.0
-
build
Returns a newly-created immutable list multimap.- Overrides:
build
in classImmutableMultimap.Builder<K,
V>
-