Object | getKey(Object value) Gets the key that is currently mapped to the specified value. |
Gets a view of this map where the keys and values are reversed. | |
Obtains a MapIterator over the map. | |
Object | put(Object key, Object value) Puts the key-value pair into the map, replacing any previous pair. |
Object | removeValue(Object value) Removes the key-value pair that is currently mapped to the specified value (optional operation). |
public Object getKey(Object value)
null
is returned.
Implementations should seek to make this method perform equally as well
as get(Object)
.
- (optional) if the map limits the type of the
value and the specified value is inappropriate
- (optional) if the map limits the values to
non-null and null was specifiedpublic BidiMap inverseBidiMap()
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.
public MapIterator mapIterator()
MapIterator
over the map.
A map iterator is an efficient way of iterating over maps.
It does not require that the map is stored using Map Entry objects
which can increase performance.
BidiMap map = new DualHashBidiMap(); MapIterator it = map.mapIterator(); while (it.hasNext()) { Object key = it.next(); Object value = it.getValue(); it.setValue("newValue"); }
public Object put(Object key, Object value)
BidiMap map1 = new DualHashBidiMap(); map.put("A","B"); // contains A mapped to B, as per Map map.put("A","C"); // contains A mapped to C, as per Map BidiMap map2 = new DualHashBidiMap(); map.put("A","B"); // contains A mapped to B, as per Map map.put("C","B"); // contains C mapped to B, key A is removed
- if the put method is not supported
- (optional) if the map limits the type of the
value and the specified value is inappropriate
- (optional) if the map limits the values
in some way and the value was invalid
- (optional) if the map limits the values to
non-null and null was specifiedpublic Object removeValue(Object value)
null
is returned.
Implementations should seek to make this method perform equally as well
as remove(Object)
.
- (optional) if the map limits the type of the
value and the specified value is inappropriate
- (optional) if the map limits the values to
non-null and null was specified
- if this method is not supported
by the implementation
Map
represents a mapping where a key may lookup a value and a value may lookup a key with equal ease. Th interface extendsMap
and so may be used anywhere a map is required. The interface provides an inverse map view, enabling full access to both directions of theBidiMap
. Implementations should allow a value to be looked up from a key and a key to be looked up from a value with equal performance.