K0 - An upper bound on the key type of the generated multimap.V0 - An upper bound on the value type of the generated multimap.@Beta @GwtCompatible @CheckReturnValue public abstract class MultimapBuilder<K0,V0> extends Object
This can be used to easily configure multimap data structure implementations not provided
 explicitly in com.google.common.collect, for example:
 
   ListMultimap<String, Integer> treeListMultimap =
       MultimapBuilder.treeKeys().arrayListValues().build();
   SetMultimap<Integer, MyEnum> hashEnumMultimap =
       MultimapBuilder.hashKeys().enumSetValues(MyEnum.class).build();
 MultimapBuilder instances are immutable.  Invoking a configuration method has no
 effect on the receiving instance; you must store and use the new builder instance it returns
 instead.
 
The generated multimaps are serializable if the key and value types are serializable, unless stated otherwise in one of the configuration methods.
| Modifier and Type | Class and Description | 
|---|---|
| static class  | MultimapBuilder.ListMultimapBuilder<K0,V0>A specialization of  MultimapBuilderthat generatesListMultimapinstances. | 
| static class  | MultimapBuilder.MultimapBuilderWithKeys<K0>An intermediate stage in a  MultimapBuilderin which the key-value collection map
 implementation has been specified, but the value collection implementation has not. | 
| static class  | MultimapBuilder.SetMultimapBuilder<K0,V0>A specialization of  MultimapBuilderthat generatesSetMultimapinstances. | 
| static class  | MultimapBuilder.SortedSetMultimapBuilder<K0,V0>A specialization of  MultimapBuilderthat generatesSortedSetMultimapinstances. | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract <K extends K0,V extends V0>  | build()Returns a new, empty  Multimapwith the specified implementation. | 
| <K extends K0,V extends V0>  | build(Multimap<? extends K,? extends V> multimap)Returns a  Multimapwith the specified implementation, initialized with the entries ofmultimap. | 
| static <K0 extends Enum<K0>>  | enumKeys(Class<K0> keyClass)Uses an  EnumMapto map keys to value collections. | 
| static MultimapBuilder.MultimapBuilderWithKeys<Object> | hashKeys()Uses a  HashMapto map keys to value collections. | 
| static MultimapBuilder.MultimapBuilderWithKeys<Object> | hashKeys(int expectedKeys)Uses a  HashMapto map keys to value collections, initialized to expect the specified
 number of keys. | 
| static MultimapBuilder.MultimapBuilderWithKeys<Object> | linkedHashKeys()Uses a  LinkedHashMapto map keys to value collections. | 
| static MultimapBuilder.MultimapBuilderWithKeys<Object> | linkedHashKeys(int expectedKeys)Uses a  LinkedHashMapto map keys to value collections, initialized to expect the
 specified number of keys. | 
| static MultimapBuilder.MultimapBuilderWithKeys<Comparable> | treeKeys()Uses a naturally-ordered  TreeMapto map keys to value collections. | 
| static <K0> MultimapBuilder.MultimapBuilderWithKeys<K0> | treeKeys(Comparator<K0> comparator)Uses a  TreeMapsorted by the specified comparator to map keys to value collections. | 
public static MultimapBuilder.MultimapBuilderWithKeys<Object> hashKeys()
HashMap to map keys to value collections.public static MultimapBuilder.MultimapBuilderWithKeys<Object> hashKeys(int expectedKeys)
HashMap to map keys to value collections, initialized to expect the specified
 number of keys.IllegalArgumentException - if expectedKeys < 0public static MultimapBuilder.MultimapBuilderWithKeys<Object> linkedHashKeys()
LinkedHashMap to map keys to value collections.
 The collections returned by Multimap.keySet(), Multimap.keys(), and
 Multimap.asMap() will iterate through the keys in the order that they were first added
 to the multimap, save that if all values associated with a key are removed and then the key is
 added back into the multimap, that key will come last in the key iteration order.
public static MultimapBuilder.MultimapBuilderWithKeys<Object> linkedHashKeys(int expectedKeys)
LinkedHashMap to map keys to value collections, initialized to expect the
 specified number of keys.
 The collections returned by Multimap.keySet(), Multimap.keys(), and
 Multimap.asMap() will iterate through the keys in the order that they were first added
 to the multimap, save that if all values associated with a key are removed and then the key is
 added back into the multimap, that key will come last in the key iteration order.
public static MultimapBuilder.MultimapBuilderWithKeys<Comparable> treeKeys()
TreeMap to map keys to value collections.
 The collections returned by Multimap.keySet(), Multimap.keys(), and
 Multimap.asMap() will iterate through the keys in sorted order.
 
For all multimaps generated by the resulting builder, the Multimap.keySet() can be
 safely cast to a SortedSet, and the Multimap.asMap() can safely be
 cast to a SortedMap.
public static <K0> MultimapBuilder.MultimapBuilderWithKeys<K0> treeKeys(Comparator<K0> comparator)
TreeMap sorted by the specified comparator to map keys to value collections.
 The collections returned by Multimap.keySet(), Multimap.keys(), and
 Multimap.asMap() will iterate through the keys in sorted order.
 
For all multimaps generated by the resulting builder, the Multimap.keySet() can be
 safely cast to a SortedSet, and the Multimap.asMap() can safely be
 cast to a SortedMap.
 
Multimaps generated by the resulting builder will not be serializable if comparator
 is not serializable.
public static <K0 extends Enum<K0>> MultimapBuilder.MultimapBuilderWithKeys<K0> enumKeys(Class<K0> keyClass)
EnumMap to map keys to value collections.public abstract <K extends K0,V extends V0> Multimap<K,V> build()
Multimap with the specified implementation.Copyright © 2010-2015. All Rights Reserved.