org.apache.commons.collections
Interface OrderedBidiMap<K,V>

All Superinterfaces:
BidiMap<K,V>, IterableMap<K,V>, Map<K,V>, OrderedMap<K,V>
All Known Subinterfaces:
SortedBidiMap<K,V>
All Known Implementing Classes:
AbstractOrderedBidiMapDecorator, AbstractSortedBidiMapDecorator, DualTreeBidiMap, TreeBidiMap, UnmodifiableOrderedBidiMap, UnmodifiableSortedBidiMap

public interface OrderedBidiMap<K,V>
extends BidiMap<K,V>, OrderedMap<K,V>

Defines a map that allows bidirectional lookup between key and values and retains and provides access to an ordering.

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.

Since:
Commons Collections 3.0
Version:
$Revision: 1.1.1.1 $ $Date: 2005/05/23 04:33:15 $
Author:
Matt Hall, John Watkinson, Stephen Colebourne

Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Method Summary
 BidiMap<V,K> inverseBidiMap()
          Gets a view of this map where the keys and values are reversed.
 OrderedBidiMap<V,K> inverseOrderedBidiMap()
          Gets a view of this map where the keys and values are reversed.
 
Methods inherited from interface org.apache.commons.collections.BidiMap
getKey, mapIterator, put, removeValue
 
Methods inherited from interface java.util.Map
clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, putAll, remove, size, values
 
Methods inherited from interface org.apache.commons.collections.OrderedMap
firstKey, lastKey, nextKey, orderedMapIterator, previousKey
 
Methods inherited from interface java.util.Map
clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, putAll, remove, size, values
 

Method Detail

inverseBidiMap

BidiMap<V,K> inverseBidiMap()
Gets a view of this map where the keys and values are reversed.

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.

Implementations must return an OrderedBidiMap instance, usually by forwarding to inverseOrderedBidiMap().

Specified by:
inverseBidiMap in interface BidiMap<K,V>
Returns:
an inverted bidirectional map

inverseOrderedBidiMap

OrderedBidiMap<V,K> inverseOrderedBidiMap()
Gets a view of this map where the keys and values are reversed.

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.

Returns:
an inverted bidirectional map


Copyright © 2005-2005 Apache Software Foundation, Matt Hall, John Watkinson. All Rights Reserved.