public abstract class AbstractOrderedBidiMapDecorator extends AbstractBidiMapDecorator implements OrderedBidiMap
Methods are forwarded directly to the decorated map.
This implementation does not perform any special processing with the map views. Instead it simply returns the inverse from the wrapped map. This may be undesirable, for example if you are trying to write a validating implementation it would provide a loophole around the validation. But, you might want that loophole, so this class is kept simple.
map
Modifier | Constructor and Description |
---|---|
protected |
AbstractOrderedBidiMapDecorator(OrderedBidiMap map)
Constructor that wraps (not copies).
|
Modifier and Type | Method and Description |
---|---|
Object |
firstKey()
Gets the first key currently in this map.
|
protected OrderedBidiMap |
getOrderedBidiMap()
Gets the map being decorated.
|
OrderedBidiMap |
inverseOrderedBidiMap()
Gets a view of this map where the keys and values are reversed.
|
Object |
lastKey()
Gets the last key currently in this map.
|
Object |
nextKey(Object key)
Gets the next key after the one specified.
|
OrderedMapIterator |
orderedMapIterator()
Obtains an
OrderedMapIterator over the map. |
Object |
previousKey(Object key)
Gets the previous key before the one specified.
|
getBidiMap, getKey, inverseBidiMap, mapIterator, removeValue
clear, containsKey, containsValue, entrySet, equals, get, getMap, hashCode, isEmpty, keySet, put, putAll, remove, size, toString, values
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
inverseBidiMap
getKey, mapIterator, put, removeValue
protected AbstractOrderedBidiMapDecorator(OrderedBidiMap map)
map
- the map to decorate, must not be nullIllegalArgumentException
- if the collection is nullprotected OrderedBidiMap getOrderedBidiMap()
public OrderedMapIterator orderedMapIterator()
OrderedMap
OrderedMapIterator
over the map.
A ordered map iterator is an efficient way of iterating over maps in both directions.
BidiMap map = new TreeBidiMap(); MapIterator it = map.mapIterator(); while (it.hasNext()) { Object key = it.next(); Object value = it.getValue(); it.setValue("newValue"); Object previousKey = it.previous(); }
orderedMapIterator
in interface OrderedMap
public Object firstKey()
OrderedMap
firstKey
in interface OrderedMap
public Object lastKey()
OrderedMap
lastKey
in interface OrderedMap
public Object nextKey(Object key)
OrderedMap
nextKey
in interface OrderedMap
key
- the key to search for next frompublic Object previousKey(Object key)
OrderedMap
previousKey
in interface OrderedMap
key
- the key to search for previous frompublic OrderedBidiMap inverseOrderedBidiMap()
OrderedBidiMap
Changes to one map will be visible in the other and vice versa. This enables both directions of the map to be accessed equally.
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.
inverseOrderedBidiMap
in interface OrderedBidiMap
Copyright © 2001–2015 The Apache Software Foundation. All rights reserved.