org.apache.commons.collections
public class MapUtils extends java.lang.Object
Map
instances.It contains various typesafe methods as well as other useful features like deep copying.
It also provides the following decorators:
Constructor and Description |
---|
MapUtils()
Please don't instantiate a
MapUtils . |
Modifier and Type | Method and Description |
---|---|
static void |
debugPrint(java.io.PrintStream out,
java.lang.Object key,
java.util.Map map)
Prints the given map with nice line breaks.
|
protected static void |
debugPrintIndent(java.io.PrintStream out)
Writes indentation to the given stream.
|
static java.util.Map |
fixedSizeMap(java.util.Map map)
Returns a fixed-sized map backed by the given map.
|
static java.util.SortedMap |
fixedSizeSortedMap(java.util.SortedMap map)
Returns a fixed-sized sorted map backed by the given sorted map.
|
static java.lang.Boolean |
getBoolean(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
a
Boolean . |
static java.lang.Boolean |
getBoolean(java.util.Map map,
java.lang.Object key,
java.lang.Boolean defaultValue)
Looks up the given key in the given map, converting the result into
a boolean, using the default value if the the conversion fails.
|
static java.lang.Byte |
getByte(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
a
Byte . |
static java.lang.Byte |
getByte(java.util.Map map,
java.lang.Object key,
java.lang.Byte defaultValue)
Looks up the given key in the given map, converting the result into
a byte, using the default value if the the conversion fails.
|
static java.lang.Double |
getDouble(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
a
Double . |
static java.lang.Double |
getDouble(java.util.Map map,
java.lang.Object key,
java.lang.Double defaultValue)
Looks up the given key in the given map, converting the result into
a double, using the default value if the the conversion fails.
|
static java.lang.Float |
getFloat(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
a
Float . |
static java.lang.Float |
getFloat(java.util.Map map,
java.lang.Object key,
java.lang.Float defaultValue)
Looks up the given key in the given map, converting the result into
a float, using the default value if the the conversion fails.
|
static java.lang.Integer |
getInteger(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
an
Integer . |
static java.lang.Integer |
getInteger(java.util.Map map,
java.lang.Object key,
java.lang.Integer defaultValue)
Looks up the given key in the given map, converting the result into
an integer, using the default value if the the conversion fails.
|
static java.lang.Long |
getLong(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
a
Long . |
static java.lang.Long |
getLong(java.util.Map map,
java.lang.Object key,
java.lang.Long defaultValue)
Looks up the given key in the given map, converting the result into
a long, using the default value if the the conversion fails.
|
static java.util.Map |
getMap(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, returning another map.
|
static java.util.Map |
getMap(java.util.Map map,
java.lang.Object key,
java.util.Map defaultValue)
Looks up the given key in the given map, converting the result into
a map, using the default value if the the conversion fails.
|
static java.lang.Number |
getNumber(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
a
Number . |
static java.lang.Number |
getNumber(java.util.Map map,
java.lang.Object key,
java.lang.Number defaultValue)
Looks up the given key in the given map, converting the result into
a number, using the default value if the the conversion fails.
|
static java.lang.Object |
getObject(java.util.Map map,
java.lang.Object key)
Synonym for
Map.get(Object) . |
static java.lang.Object |
getObject(java.util.Map map,
java.lang.Object key,
java.lang.Object defaultValue)
Looks up the given key in the given map, converting null into the
given default value.
|
static java.lang.Short |
getShort(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
a
Short . |
static java.lang.Short |
getShort(java.util.Map map,
java.lang.Object key,
java.lang.Short defaultValue)
Looks up the given key in the given map, converting the result into
a short, using the default value if the the conversion fails.
|
static java.lang.String |
getString(java.util.Map map,
java.lang.Object key)
Looks up the given key in the given map, converting the result into
a string.
|
static java.lang.String |
getString(java.util.Map map,
java.lang.Object key,
java.lang.String defaultValue)
Looks up the given key in the given map, converting the result into
a string, using the default value if the the conversion fails.
|
static java.util.Map |
lazyMap(java.util.Map map,
Factory factory)
Returns a "lazy" map whose values will be created on demand.
|
static java.util.SortedMap |
lazySortedMap(java.util.SortedMap map,
Factory factory)
Returns a "lazy" sorted map whose values will be created on demand.
|
protected static void |
logInfo(java.lang.Exception e)
Logs the given exception to
System.out . |
static java.util.Map |
predicatedMap(java.util.Map map,
Predicate keyPred,
Predicate valuePred)
Returns a predicated map backed by the given map.
|
static java.util.SortedMap |
predicatedSortedMap(java.util.SortedMap map,
Predicate keyPred,
Predicate valuePred)
Returns a predicated sorted map backed by the given map.
|
static void |
safeAddToMap(java.util.Map map,
java.lang.Object key,
java.lang.Object value)
Nice method for adding data to a map in such a way
as to not get NPE's.
|
static java.util.Properties |
toProperties(java.util.Map map)
Gets a new Properties object initialised with the values from a Map.
|
static void |
verbosePrint(java.io.PrintStream out,
java.lang.Object key,
java.util.Map map)
Prints the given map with nice line breaks.
|
public static void debugPrint(java.io.PrintStream out, java.lang.Object key, java.util.Map map)
out
- the stream to print tokey
- the key that maps to the map in some other mapmap
- the map to printprotected static void debugPrintIndent(java.io.PrintStream out)
out
- the stream to indentpublic static java.util.Map fixedSizeMap(java.util.Map map)
Map.put(Object,Object)
method).map
- the map whose size to fix, must not be nulljava.lang.IllegalArgumentException
- if the Map is nullpublic static java.util.SortedMap fixedSizeSortedMap(java.util.SortedMap map)
Map.put(Object,Object)
method).map
- the map whose size to fix, must not be nulljava.lang.IllegalArgumentException
- if the SortedMap is nullpublic static java.lang.Boolean getBoolean(java.util.Map map, java.lang.Object key)
Boolean
. If the map is null, this method returns null.
If the value mapped by the given key is a
Boolean
, then it is returned as-is. Otherwise, if the value
is a string, then if that string ignoring case equals "true", then
a true Boolean
is returned. Any other string value will
result in a false Boolean
being returned. OR, if the value
is a Number
, and that Number
is 0, then a false
Boolean
is returned. Any other Number
value results
in a true Boolean
being returned.
Any value that is not a Boolean
, String
or
Number
results in null being returned.
map
- the map whose value to look upkey
- the key whose value to look up in that mapBoolean
or nullpublic static java.lang.Boolean getBoolean(java.util.Map map, java.lang.Object key, java.lang.Boolean defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.lang.Byte getByte(java.util.Map map, java.lang.Object key)
Byte
. First, getNumber(Map,Object)
is invoked.
If the result is null, then null is returned. Otherwise, the
byte value of the resulting Number
is returned.map
- the map whose value to look upkey
- the key whose value to look up in that mapByte
or nullpublic static java.lang.Byte getByte(java.util.Map map, java.lang.Object key, java.lang.Byte defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.lang.Double getDouble(java.util.Map map, java.lang.Object key)
Double
. First, getNumber(Map,Object)
is invoked.
If the result is null, then null is returned. Otherwise, the
double value of the resulting Number
is returned.map
- the map whose value to look upkey
- the key whose value to look up in that mapDouble
or nullpublic static java.lang.Double getDouble(java.util.Map map, java.lang.Object key, java.lang.Double defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.lang.Float getFloat(java.util.Map map, java.lang.Object key)
Float
. First, getNumber(Map,Object)
is invoked.
If the result is null, then null is returned. Otherwise, the
float value of the resulting Number
is returned.map
- the map whose value to look upkey
- the key whose value to look up in that mapFloat
or nullpublic static java.lang.Float getFloat(java.util.Map map, java.lang.Object key, java.lang.Float defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.lang.Integer getInteger(java.util.Map map, java.lang.Object key)
Integer
. First, getNumber(Map,Object)
is invoked.
If the result is null, then null is returned. Otherwise, the
integer value of the resulting Number
is returned.map
- the map whose value to look upkey
- the key whose value to look up in that mapInteger
or nullpublic static java.lang.Integer getInteger(java.util.Map map, java.lang.Object key, java.lang.Integer defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.lang.Long getLong(java.util.Map map, java.lang.Object key)
Long
. First, getNumber(Map,Object)
is invoked.
If the result is null, then null is returned. Otherwise, the
long value of the resulting Number
is returned.map
- the map whose value to look upkey
- the key whose value to look up in that mapLong
or nullpublic static java.lang.Long getLong(java.util.Map map, java.lang.Object key, java.lang.Long defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.util.Map getMap(java.util.Map map, java.lang.Object key)
map
- the map whose value to look upkey
- the key whose value to look up in that mapMap
or nullpublic static java.util.Map getMap(java.util.Map map, java.lang.Object key, java.util.Map defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.lang.Number getNumber(java.util.Map map, java.lang.Object key)
Number
. If the map is null, this method returns null.
Otherwise, if the key maps to a Number
, then that number
is returned as-is. Otherwise, if the key maps to a String
,
that string is parsed into a number using the system default
NumberFormat
.
If the value is not a Number
or a String
, or if
the value is a String
that cannot be parsed into a
Number
, then null is returned.
map
- the map whose value to look upkey
- the key whose value to look up in that mapNumber
or nullpublic static java.lang.Number getNumber(java.util.Map map, java.lang.Object key, java.lang.Number defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.lang.Object getObject(java.util.Map map, java.lang.Object key)
Map.get(Object)
.map
- the map whose value to look upkey
- the key whose value to look up in that mapmap.get(key)
public static java.lang.Object getObject(java.util.Map map, java.lang.Object key, java.lang.Object defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is nullpublic static java.lang.Short getShort(java.util.Map map, java.lang.Object key)
Short
. First, getNumber(Map,Object)
is invoked.
If the result is null, then null is returned. Otherwise, the
short value of the resulting Number
is returned.map
- the map whose value to look upkey
- the key whose value to look up in that mapShort
or nullpublic static java.lang.Short getShort(java.util.Map map, java.lang.Object key, java.lang.Short defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.lang.String getString(java.util.Map map, java.lang.Object key)
map
- the map whose value to look upkey
- the key whose value to look up in that maptoString()
result of the value for that keypublic static java.lang.String getString(java.util.Map map, java.lang.Object key, java.lang.String defaultValue)
map
- the map whose value to look upkey
- the key of the value to look up in that mapdefaultValue
- what to return if the value is null or if the
conversion failspublic static java.util.Map lazyMap(java.util.Map map, Factory factory)
When the key passed to the returned map's Map.get(Object)
method is not present in the map, then the factory will be used
to create a new object and that object will become the value
associated with that key.
For instance:
Factory factory = new Factory() { public Object create() { return new Date(); } } Map lazy = MapUtils.lazyMap(new HashMap(), factory); Object obj = lazy.get("test");After the above code is executed,
obj
will contain
a new Date
instance. Furthermore, that Date
instance is the value for the test
key.map
- the map to make lazy, must not be nullfactory
- the factory for creating new objects, must not be nulljava.lang.IllegalArgumentException
- if the Map or Factory is nullpublic static java.util.SortedMap lazySortedMap(java.util.SortedMap map, Factory factory)
When the key passed to the returned map's Map.get(Object)
method is not present in the map, then the factory will be used
to create a new object and that object will become the value
associated with that key.
For instance:
Factory factory = new Factory() { public Object create() { return new Date(); } } SortedMap lazy = MapUtils.lazySortedMap(new TreeMap(), factory); Object obj = lazy.get("test");After the above code is executed,
obj
will contain
a new Date
instance. Furthermore, that Date
instance is the value for the test
key.map
- the map to make lazy, must not be nullfactory
- the factory for creating new objects, must not be nulljava.lang.IllegalArgumentException
- if the SortedMap or Factory is nullprotected static void logInfo(java.lang.Exception e)
System.out
.e
- the exception to logpublic static java.util.Map predicatedMap(java.util.Map map, Predicate keyPred, Predicate valuePred)
map
- the map to predicate, must not be nullkeyPred
- the predicate for keys, must not be nullvaluePred
- the predicate for values, must not be nulljava.lang.IllegalArgumentException
- if the Map or Predicates are nullpublic static java.util.SortedMap predicatedSortedMap(java.util.SortedMap map, Predicate keyPred, Predicate valuePred)
map
- the map to predicate, must not be nullkeyPred
- the predicate for keys, must not be nullvaluePred
- the predicate for values, must not be nulljava.lang.IllegalArgumentException
- if the SortedMap or Predicates are nullpublic static final void safeAddToMap(java.util.Map map, java.lang.Object key, java.lang.Object value) throws java.lang.NullPointerException
java.lang.NullPointerException
public static java.util.Properties toProperties(java.util.Map map)
map
- the map to convert to a Properties objectpublic static void verbosePrint(java.io.PrintStream out, java.lang.Object key, java.util.Map map)
out
- the stream to print tokey
- the key that maps to the map in some other mapmap
- the map to printCopyright © 2001-2004 Apache Software Foundation. Documenation generated March 13 2014.