java.lang.Object | |
↳ | com.pnfsoftware.jeb.util.collect.MultiMap<K, V> |
A multi-map of key-values, whose insertion order for the values of a given key is maintained.
This class is serialializable
. Null key is allowed; null values are allowed.
Thread-safety: none.
Note: this class does not implement the Map interface, but attempts to follow its guidelines and contracts the best it can. One notable exception is that this class does not override hashCode/equals.
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
MultiMap()
Create a new multi-map.
| |||||||||||
MultiMap(KeyOrder keyOrder)
Create a new multi-map.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
void | clear() | ||||||||||
boolean | containsKey(K key) | ||||||||||
boolean | containsValue(V value) | ||||||||||
boolean |
createKey(K key)
Create an explicit entry for a given key.
| ||||||||||
List<V> | get(K key, boolean safe) | ||||||||||
List<V> | get(K key) | ||||||||||
List<V> | getSafe(K key) | ||||||||||
boolean | isEmpty() | ||||||||||
Set<K> | keySet() | ||||||||||
int | keySize() | ||||||||||
int | put(K key, V value) | ||||||||||
void | putAll(Map<? extends K, List<? extends V>> m) | ||||||||||
void |
putMulti(K key, Collection<? extends V> values)
Add multiple elements mapped by the same key.
| ||||||||||
List<V> | remove(K key) | ||||||||||
int | removeMulti(K key, Collection<? extends V> values) | ||||||||||
V | removeValue(K key, V value) | ||||||||||
int |
size()
Get the number of key-value mappings (per Map interface).
| ||||||||||
String | toString() | ||||||||||
Collection<V> | values() |
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() |
Create a new multi-map.
Create an explicit entry for a given key. If no values mapped by the given key previously existed, the associated value will be an empty collecction.
safe | if true, an empty list of values is returned if the key does not exist |
---|
Add multiple elements mapped by the same key. Note that if an empty collection is provided, the entry for the provided key will not be be explicitly created.
Get the number of key-value mappings (per Map interface). That is, the number of values.