public final class UnmodifiableBidiMap<K,V> extends AbstractBidiMapDecorator<K ,V> implements Unmodifiable
BidiMap to ensure it can't be altered.
Attempts to modify it will result in an UnsupportedOperationException.
| Modifier and Type | Method and Description |
|---|---|
void |
clear()
|
Set |
entrySet()
|
BidiMap |
inverseBidiMap()
Gets a view of this map where the keys and values are reversed.
|
Set |
keySet()
|
MapIterator |
mapIterator()
Obtains a
MapIterator over the map.
|
V |
put(K key, V value)
Note that the return type is Object, rather than V as in the Map interface.
|
void |
putAll(Map
|
V |
remove(Object
|
K |
removeValue(Object
Removes the key-value pair that is currently mapped to the specified value (optional operation).
|
static <K |
unmodifiableBidiMap(BidiMap
Factory method to create an unmodifiable map.
|
Set |
values()
Returns a
Set view of the values contained in this map.
|
decorated, getKeycontainsKey, containsValue, equals, get, hashCode, isEmpty, size, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitcompute, computeIfAbsent, computeIfPresent, containsKey, containsValue, equals, forEach, get, getOrDefault, hashCode, isEmpty, merge, putIfAbsent, remove, replace, replace, replaceAll, sizecontainsKey, containsValue, get, isEmpty, sizepublic static <K,V> BidiMap <K ,V> unmodifiableBidiMap(BidiMap <? extends K ,? extends V> map)
If the map passed in is already unmodifiable, it is returned.
K - the key type
V - the value type
map - the map to decorate, must not be null
NullPointerException - if map is null
public void clear()
public V put(K key, V value)
Put
put in interface
Map<K,V>
put in interface
BidiMap<K,V>
put in interface
Put<K,V>
put in class
AbstractMapDecorator<K,V>
key - the key to store
value - the value to store
Map.put(Object, Object)
public Set<V> values()
BidiMap
Set view of the values contained in this map. The set is backed by the map, so changes to the map are reflected in the set, and vice-versa. If the map is modified while an iteration over the set is in progress (except through the iterator's own
remove operation), the results of the iteration are undefined. The set supports element removal, which removes the corresponding mapping from the map, via the
Iterator.remove,
Collection.remove,
removeAll,
retainAll and
clear operations. It does not support the
add or
addAll operations.
public K removeValue(Objectvalue)
BidiMap
If the value is not contained in the map, null is returned.
Implementations should seek to make this method perform equally as well as remove(Object).
removeValue in interface
BidiMap<K,V>
removeValue in class
AbstractBidiMapDecorator<K,V>
value - the value to find the key-value pair for
null if nothing removed
public MapIterator<K ,V> mapIterator()
AbstractIterableMap
MapIterator over the map.
A map iterator is an efficient way of iterating over maps. There is no need to access the entry set or use Map Entry objects.
IterableMap
map = new HashedMap
(); MapIterator
it = map.mapIterator(); while (it.hasNext()) { String key = it.next(); Integer value = it.getValue(); it.setValue(value + 1); }
mapIterator in interface
IterableGet<K,V>
mapIterator in class
AbstractBidiMapDecorator<K,V>
public BidiMap<V ,K> inverseBidiMap()
BidiMap
Changes to one map will be visible in the other and vice versa. This enables both directions of the map to be accessed as a Map.
Implementations should seek to avoid creating a new object every time this method is called. See AbstractMap.values() etc. Calling this method on the inverse map should return the original.
inverseBidiMap in interface
BidiMap<K,V>
inverseBidiMap in class
AbstractBidiMapDecorator<K,V>