BagMultimap<K,V>
, MutableBagIterableMultimap<K,V>
, MutableBagMultimap<K,V>
, UnsortedBagMultimap<K,V>
, Multimap<K,V>
, MutableMultimap<K,V>
HashBagMultimap
, HashBagMultimapWithHashingStrategy
, MultiReaderHashBagMultimap
public abstract class AbstractMutableBagMultimap<K,V> extends AbstractMutableMultimap<K,V,MutableBag<V>> implements MutableBagMultimap<K,V>
Modifier and Type | Method | Description |
---|---|---|
MutableBagMultimap<K,V> |
asSynchronized() |
Returns a synchronized wrapper backed by this multimap.
|
<K2,V2> HashBagMultimap<K2,V2> |
collectKeyMultiValues(Function<? super K,? extends K2> keyFunction,
Function<? super V,? extends V2> valueFunction) |
Returns a new multimap with the results of applying the specified keyFunction and valueFunction on each key and corresponding values of the source multimap.
|
<K2,V2> HashBagMultimap<K2,V2> |
collectKeysValues(Function2<? super K,? super V,Pair<K2,V2>> function) |
Returns a new multimap with the results of applying the specified function on each key and value of the source
multimap.
|
void |
putOccurrences(K key,
V value,
int occurrences) |
|
void |
readExternal(ObjectInput in) |
|
ImmutableBagMultimap<K,V> |
toImmutable() |
Returns an immutable copy of this Multimap if it is not already immutable.
|
MutableBagMultimap<K,V> |
toMutable() |
Returns a mutable copy of this Multimap.
|
void |
writeExternal(ObjectOutput out) |
collectKeyMultiValues, collectKeysValues, collectValues, containsKey, containsKeyAndValue, containsValue, equals, forEachKey, forEachKeyMultiValues, forEachKeyValue, forEachValue, hashCode, keyBag, keyMultiValuePairsView, keysView, keyValuePairsView, multiValuesView, notEmpty, rejectKeysMultiValues, rejectKeysValues, selectKeysMultiValues, selectKeysValues, toString, valuesView
clear, get, getIfAbsentPutAll, isEmpty, keySet, put, putAll, putAll, remove, removeAll, replaceValues, size, sizeDistinct, toMap, toMap
collectKeyMultiValues, collectKeysValues, collectValues, containsKey, containsKeyAndValue, containsValue, equals, forEachKey, forEachKeyMultiValues, forEachKeyValue, forEachValue, hashCode, isEmpty, keyBag, keyMultiValuePairsView, keySet, keysView, keyValuePairsView, multiValuesView, notEmpty, rejectKeysMultiValues, rejectKeysValues, selectKeysMultiValues, selectKeysValues, size, sizeDistinct, toMap, toMap, valuesView
collectValues, flip, get, getIfAbsentPutAll, newEmpty, rejectKeysMultiValues, rejectKeysValues, removeAll, replaceValues, selectKeysMultiValues, selectKeysValues
add, clear, put, putAll, putAll, putAllPairs, putAllPairs, remove
public MutableBagMultimap<K,V> toMutable()
Multimap
public ImmutableBagMultimap<K,V> toImmutable()
Multimap
The returned Multimap will be Serializable
if this Multimap is Serializable
.
toImmutable
in interface Multimap<K,V>
toImmutable
in interface UnsortedBagMultimap<K,V>
public <K2,V2> HashBagMultimap<K2,V2> collectKeysValues(Function2<? super K,? super V,Pair<K2,V2>> function)
Multimap
e.g. return multimap.collectKeysValues(new Function2<Integer, Person, Pair<String, String>>() { public Pair<String, String> valueOf(Integer age, Person person) { return Tuples.pair(age.toString(), person.getLastName()); } });
collectKeysValues
in interface Multimap<K,V>
collectKeysValues
in interface MutableBagIterableMultimap<K,V>
collectKeysValues
in interface MutableBagMultimap<K,V>
collectKeysValues
in interface MutableMultimap<K,V>
collectKeysValues
in interface UnsortedBagMultimap<K,V>
function
- a Function2
to use for transformationMultimap
, which contains elements as a result of the transformationpublic <K2,V2> HashBagMultimap<K2,V2> collectKeyMultiValues(Function<? super K,? extends K2> keyFunction, Function<? super V,? extends V2> valueFunction)
Multimap
e.g. return multimap.collectKeyMultiValues(each -> each + 1, Person::getLastName);
collectKeyMultiValues
in interface Multimap<K,V>
collectKeyMultiValues
in interface MutableBagIterableMultimap<K,V>
collectKeyMultiValues
in interface MutableBagMultimap<K,V>
collectKeyMultiValues
in interface MutableMultimap<K,V>
collectKeyMultiValues
in interface UnsortedBagMultimap<K,V>
keyFunction
- Function
to use transformation to get the keyvalueFunction
- Function
to use transformation to get the valuesMultimap
, which contains elements as a result of the transformationpublic void writeExternal(ObjectOutput out) throws IOException
writeExternal
in class AbstractMutableMultimap<K,V,MutableBag<V>>
IOException
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in class AbstractMutableMultimap<K,V,MutableBag<V>>
IOException
ClassNotFoundException
public void putOccurrences(K key, V value, int occurrences)
putOccurrences
in interface MutableBagMultimap<K,V>
public MutableBagMultimap<K,V> asSynchronized()
MutableMultimap
MutableMultimap synchedMultimap = multimap.asSynchronized(); synchedMultimap.forEachKey(key -> ... ); synchedMultimap.forEachValue(value -> ... ); synchedMultimap.forEachKeyValue((key, value) -> ... ); synchedMultimap.forEachKeyMultiValues((key, values) -> ... );
If you want to iterate imperatively over the keySet(), keysView(), valuesView(), or other views, you will need to protect the iteration by wrapping the code in a synchronized block on the multimap.
asSynchronized
in interface MutableBagIterableMultimap<K,V>
asSynchronized
in interface MutableBagMultimap<K,V>
asSynchronized
in interface MutableMultimap<K,V>
MutableMapIterable.asSynchronized()
Copyright © 2004–2019. All rights reserved.