Class ImmutableSortedMap.Builder<K,V>
java.lang.Object
com.google.common.collect.ImmutableMap.Builder<K,V>
com.google.common.collect.ImmutableSortedMap.Builder<K,V>
- Enclosing class:
ImmutableSortedMap<K,V>
A builder for creating immutable sorted map instances, especially
public static final
maps ("constant maps"). Example:
static final ImmutableSortedMap<Integer, String> INT_TO_WORD =
new ImmutableSortedMap.Builder<Integer, String>(Ordering.natural())
.put(1, "one")
.put(2, "two")
.put(3, "three")
.buildOrThrow();
For small immutable sorted maps, the ImmutableSortedMap.of() methods are even
more convenient.
Builder instances can be reused - it is safe to call buildOrThrow() multiple times to
build multiple maps in series. Each map is a superset of the maps created before it.
- Since:
- 2.0
- Author:
- Jared Levy, Louis Wasserman
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()Returns a newly-created immutable sorted map.final ImmutableSortedMap<K, V> Deprecated.This method is not currently implemented, and may never be.Returns a newly-created immutable sorted map, or throws an exception if any two keys are equal.final ImmutableSortedMap.Builder<K, V> orderEntriesByValue(Comparator<? super V> valueComparator) Deprecated.Unsupported by ImmutableSortedMap.Builder.Adds the givenentryto the map, making it immutable if necessary.Associateskeywithvaluein the built map.Adds all the given entries to the built map.Associates all of the given map's keys and values in the built map.
-
Constructor Details
-
Builder
Creates a new builder. The returned builder is equivalent to the builder generated byImmutableSortedMap.orderedBy(Comparator).
-
-
Method Details
-
put
Associateskeywithvaluein the built map. Duplicate keys, according to the comparator (which might be the keys' natural order), are not allowed, and will causebuild()to fail.- Overrides:
putin classImmutableMap.Builder<K,V>
-
put
@CanIgnoreReturnValue public ImmutableSortedMap.Builder<K,V> put(Map.Entry<? extends K, ? extends V> entry) Adds the givenentryto the map, making it immutable if necessary. Duplicate keys, according to the comparator (which might be the keys' natural order), are not allowed, and will causebuild()to fail.- Overrides:
putin classImmutableMap.Builder<K,V> - Since:
- 11.0
-
putAll
@CanIgnoreReturnValue public ImmutableSortedMap.Builder<K,V> putAll(Map<? extends K, ? extends V> map) Associates all of the given map's keys and values in the built map. Duplicate keys, according to the comparator (which might be the keys' natural order), are not allowed, and will causebuild()to fail.- Overrides:
putAllin classImmutableMap.Builder<K,V> - Throws:
NullPointerException- if any key or value inmapis null
-
putAll
@CanIgnoreReturnValue public ImmutableSortedMap.Builder<K,V> putAll(Iterable<? extends Map.Entry<? extends K, ? extends V>> entries) Adds all the given entries to the built map. Duplicate keys, according to the comparator (which might be the keys' natural order), are not allowed, and will causebuild()to fail.- Overrides:
putAllin classImmutableMap.Builder<K,V> - Throws:
NullPointerException- if any key, value, or entry is null- Since:
- 19.0
-
orderEntriesByValue
@CanIgnoreReturnValue @Deprecated public final ImmutableSortedMap.Builder<K,V> orderEntriesByValue(Comparator<? super V> valueComparator) Deprecated.Unsupported by ImmutableSortedMap.Builder.Throws anUnsupportedOperationException.- Overrides:
orderEntriesByValuein classImmutableMap.Builder<K,V> - Since:
- 19.0
-
build
Returns a newly-created immutable sorted map.Prefer the equivalent method
buildOrThrow()to make it explicit that the method will throw an exception if there are duplicate keys. Thebuild()method will soon be deprecated.- Overrides:
buildin classImmutableMap.Builder<K,V> - Throws:
IllegalArgumentException- if any two keys are equal according to the comparator (which might be the keys' natural order)
-
buildOrThrow
Returns a newly-created immutable sorted map, or throws an exception if any two keys are equal.- Overrides:
buildOrThrowin classImmutableMap.Builder<K,V> - Throws:
IllegalArgumentException- if any two keys are equal according to the comparator (which might be the keys' natural order)- Since:
- 31.0
-
buildKeepingLast
Deprecated.This method is not currently implemented, and may never be.Throws UnsupportedOperationException. A future version may support this operation. Then the value for any given key will be the one that was last supplied in aputoperation for that key.- Overrides:
buildKeepingLastin classImmutableMap.Builder<K,V> - Throws:
UnsupportedOperationException- always- Since:
- 31.1
-