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
-
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 givenentry
to the map, making it immutable if necessary.Associateskey
withvalue
in 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(java.util.Comparator<K>)
.
-
-
Method Details
-
put
Associateskey
withvalue
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:
put
in classImmutableMap.Builder<K,
V>
-
put
@CanIgnoreReturnValue public ImmutableSortedMap.Builder<K,V> put(Map.Entry<? extends K, ? extends V> entry) Adds the givenentry
to 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:
put
in 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:
putAll
in classImmutableMap.Builder<K,
V> - Throws:
NullPointerException
- if any key or value inmap
is 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:
putAll
in 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:
orderEntriesByValue
in 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:
build
in 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:
buildOrThrow
in 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 aput
operation for that key.- Overrides:
buildKeepingLast
in classImmutableMap.Builder<K,
V> - Throws:
UnsupportedOperationException
- always- Since:
- 31.1
-