java.lang.Object | |||
↳ | java.util.AbstractMap<K, V> | ||
↳ | org.apache.commons.collections.map.AbstractHashedMap | ||
↳ | org.apache.commons.collections.map.CaseInsensitiveMap |
A case-insensitive 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}.
Note that CaseInsensitiveMap is not synchronized and is not thread-safe.
If you wish to use this map from multiple threads concurrently, you must use
appropriate synchronization. The simplest approach is to wrap this map
using synchronizedMap(Map)
. This class may throw
exceptions when accessed by concurrent threads without synchronization.
[Expand]
Inherited Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
org.apache.commons.collections.map.AbstractHashedMap
|
[Expand]
Inherited Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
org.apache.commons.collections.map.AbstractHashedMap
|
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Constructs a new empty map with default size and load factor.
| |||||||||||
Constructs a new, empty map with the specified initial capacity.
| |||||||||||
Constructs a new, empty map with the specified initial capacity and
load factor.
| |||||||||||
Constructor copying elements from another map.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Clones the map without cloning the keys or values.
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Overrides convertKey() from
AbstractHashedMap to convert keys to
lower case. |
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
org.apache.commons.collections.map.AbstractHashedMap
| |||||||||||
From class
java.util.AbstractMap
| |||||||||||
From class
java.lang.Object
| |||||||||||
From interface
java.util.Map
| |||||||||||
From interface
org.apache.commons.collections.IterableMap
|
Constructs a new empty map with default size and load factor.
Constructs a new, empty map with the specified initial capacity.
initialCapacity | the initial capacity |
---|
IllegalArgumentException | if the initial capacity is less than one |
---|
Constructs a new, empty map with the specified initial capacity and load factor.
initialCapacity | the initial capacity |
---|---|
loadFactor | the load factor |
IllegalArgumentException | if the initial capacity is less than one |
---|---|
IllegalArgumentException | if the load factor is less than zero |
Constructor copying elements from another map.
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).
map | the map to copy |
---|
NullPointerException | if the map is null |
---|
Overrides convertKey() from AbstractHashedMap
to convert keys to
lower case.
Returns null if key is null.
key | the key convert |
---|