@GwtCompatible public interface ListMultimap<K,V> extends Multimap<K,V>
Multimap
that can hold duplicate key-value pairs and that maintains
the insertion ordering of values for a given key.
The get(K)
, removeAll(java.lang.Object)
, and replaceValues(K, java.lang.Iterable<? extends V>)
methods
each return a List
of values. Though the method signature doesn't say
so explicitly, the map returned by asMap()
has List
values.
Modifier and Type | Method and Description |
---|---|
Map<K,Collection<V>> |
asMap()
Returns a map view that associates each key with the corresponding values
in the multimap.
|
boolean |
equals(Object obj)
Compares the specified object to this multimap for equality.
|
List<V> |
get(K key)
Returns a collection view of all values associated with a key.
|
List<V> |
removeAll(Object key)
Removes all values associated with a given key.
|
List<V> |
replaceValues(K key,
Iterable<? extends V> values)
Stores a collection of values with the same key, replacing any existing
values for that key.
|
List<V> get(@Nullable K key)
Changes to the returned collection will update the underlying multimap, and vice versa.
Because the values for a given key may have duplicates and follow the
insertion ordering, this method returns a List
, instead of the
Collection
specified in the Multimap
interface.
List<V> removeAll(@Nullable Object key)
Because the values for a given key may have duplicates and follow the
insertion ordering, this method returns a List
, instead of the
Collection
specified in the Multimap
interface.
removeAll
in interface Multimap<K,V>
key
- key of entries to remove from the multimapList<V> replaceValues(K key, Iterable<? extends V> values)
Because the values for a given key may have duplicates and follow the
insertion ordering, this method returns a List
, instead of the
Collection
specified in the Multimap
interface.
replaceValues
in interface Multimap<K,V>
key
- key to store in the multimapvalues
- values to store in the multimapMap<K,Collection<V>> asMap()
setValue()
on its entries, put
, or putAll
.
When passed a key that is present in the map, asMap().get(Object)
has the same behavior as Multimap.get(K)
, returning a
live collection. When passed a key that is not present, however, asMap().get(Object)
returns null
instead of an empty collection.
Though the method signature doesn't say so explicitly, the returned map
has List
values.