org.apache.commons.collections.map
public class CaseInsensitiveMap extends AbstractHashedMap implements Serializable, Cloneable
Map
.
As entries are added to the map, keys are converted to all lowercase. A new
key is compared to existing keys by comparing newKey.toString().toLower()
to the lowercase values in the current KeySet.
Null keys are supported.
The keySet()
method returns all lowercase keys, or nulls.
Example:
Map map = new CaseInsensitiveMap();
map.put("One", "One");
map.put("Two", "Two");
map.put(null, "Three");
map.put("one", "Four");
creates a CaseInsensitiveMap
with three entries.map.get(null)
returns "Three"
and map.get("ONE")
returns "Four".
The Set
returned by keySet()
equals {"one", "two", null}.
Since: Commons Collections 3.0
Version: $Revision: 1.4 $ $Date: 2004/02/18 01:13:19 $
Constructor Summary | |
---|---|
CaseInsensitiveMap()
Constructs a new empty map with default size and load factor. | |
CaseInsensitiveMap(int initialCapacity)
Constructs a new, empty map with the specified initial capacity.
| |
CaseInsensitiveMap(int initialCapacity, float loadFactor)
Constructs a new, empty map with the specified initial capacity and
load factor.
| |
CaseInsensitiveMap(Map map)
Constructor copying elements from another map.
|
Method Summary | |
---|---|
Object | clone()
Clones the map without cloning the keys or values.
|
protected Object | convertKey(Object key)
Overrides convertKey() from {@link AbstractHashedMap} to convert keys to
lower case.
|
Parameters: initialCapacity the initial capacity
Throws: IllegalArgumentException if the initial capacity is less than one
Parameters: initialCapacity the initial capacity loadFactor the load factor
Throws: IllegalArgumentException if the initial capacity is less than one IllegalArgumentException if the load factor is less than zero
Keys will be converted to lower case strings, which may cause some entries to be removed (if string representation of keys differ only by character case).
Parameters: map the map to copy
Throws: NullPointerException if the map is null
Returns: a shallow clone
Returns null if key is null.
Parameters: key the key convert
Returns: the converted key