This package contains implementations of the {@link java.util.Map Map}, {@link org.apache.commons.collections.IterableMap IterableMap}, {@link org.apache.commons.collections.OrderedMap OrderedMap} and {@link java.util.SortedMap SortedMap} interfaces. A Map provides a lookup from a key to a value. A number of implementations also support the new MapIterator interface that enables simple iteration of map keys and values.

The following implementations are provided:

- HashedMap - general purpose HashMap replacement supporting MapIterator
- IdentityMap - Map that uses == for comparison instead of equals()
- Flat3Map - designed for good performance at size 3 or less
- LinkedMap - a hash map that maintains insertion order, supporting OrderedMapIterator
- ReferenceMap - allows the garbage collector to collect keys and values
- StaticBucketMap - internally synchronized and designed for thread-contentious environments

The following decorators are provided:

- Unmodifiable - ensures the collection cannot be altered
- Predicated - ensures that only elements that are valid according to a predicate can be added
- Typed - ensures that only elements that are of a specific type can be added
- Transformed - transforms each element added
- FixedSize - ensures that the size of the map cannot change
- Lazy - creates objects in the map on demand
- ListOrdered - ensures that insertion order is retained