public static class ImmutableMap.Builder<K,V> extends Object
public static finalmaps ("constant maps"). Example:
static final ImmutableMap<String, Integer> WORD_TO_INT = new ImmutableMap.Builder<String, Integer>() .put("one", 1) .put("two", 2) .put("three", 3) .build();
For small immutable maps, the
ImmutableMap.of() methods are even more
By default, a
Builder will generate maps that iterate over entries in the order
they were inserted into the builder, equivalently to
LinkedHashMap. For example, in
the above example,
WORD_TO_INT.entrySet() is guaranteed to iterate over the entries in
"one"=1, "two"=2, "three"=3, and
respect the same order. If you want a different order, consider using
ImmutableSortedMap to sort by keys, or call
which changes this builder to sort entries by value.
Builder instances can be reused - it is safe to call
multiple times to build multiple maps in series. Each map is a superset of
the maps created before it.
|Constructor and Description|
Creates a new builder.
|Modifier and Type||Method and Description|
Returns a newly-created immutable map.
Adds the given
Adds all of the given entries to the built map.
Associates all of the given map's keys and values in the built map.
valuein the built map. Duplicate keys are not allowed, and will cause
entryto the map, making it immutable if necessary. Duplicate keys are not allowed, and will cause
NullPointerException- if any key or value in
@Beta public ImmutableMap.Builder<K,V> putAll(Iterable<? extends Map.Entry<? extends K,? extends V>> entries)
NullPointerException- if any key, value, or entry is null
@Beta public ImmutableMap.Builder<K,V> orderEntriesByValue(Comparator<? super V> valueComparator)
Builderto order entries by value according to the specified comparator.
The sort order is stable, that is, if two entries have values that compare as equivalent, the entry that was inserted first will be first in the built map's iteration order.
IllegalStateException- if this method was already called
public ImmutableMap<K,V> build()
orderEntriesByValue(java.util.Comparator<? super V>)was called, in which case entries are sorted by value.
IllegalArgumentException- if duplicate keys were added
Copyright © 2010–2017. All rights reserved.