public class ObjectUtils extends Object
Operations on Object
.
This class tries to handle null
input gracefully. An exception
will generally not be thrown for a null
input. Each method
documents its behaviour in more detail.
Modifier and Type | Class and Description |
---|---|
static class |
ObjectUtils.Null
Class used as a null placeholder where
null has another
meaning. |
Modifier and Type | Field and Description |
---|---|
static ObjectUtils.Null |
NULL
Singleton used as a
null placeholder where
null has another meaning. |
Constructor and Description |
---|
ObjectUtils()
ObjectUtils instances should NOT be constructed in
standard programming. |
Modifier and Type | Method and Description |
---|---|
static StringBuffer |
appendIdentityToString(StringBuffer buffer,
Object object)
Appends the toString that would be produced by
Object if a
class did not override toString itself. |
static Object |
defaultIfNull(Object object,
Object defaultValue)
Returns a default value if the object passed is
null . |
static boolean |
equals(Object object1,
Object object2)
Compares two objects for equality, where either one or both objects may
be
null . |
static int |
hashCode(Object obj)
Gets the hash code of an object returning zero when the object is
null . |
static String |
identityToString(Object object)
Gets the toString that would be produced by
Object if a
class did not override toString itself. |
static String |
toString(Object obj)
Gets the
toString of an Object returning an
empty string ("") if null input. |
static String |
toString(Object obj,
String nullStr)
Gets the
toString of an Object returning a
specified text if null input. |
public static final ObjectUtils.Null NULL
Singleton used as a null
placeholder where
null
has another meaning.
For example, in a HashMap
the
HashMap.get(java.lang.Object)
method returns
null
if the Map
contains null
or if there is no matching key. The Null
placeholder can
be used to distinguish between these two cases.
Another example is Hashtable
, where null
cannot be stored.
This instance is Serializable.
public ObjectUtils()
ObjectUtils
instances should NOT be constructed in
standard programming. Instead, the class should be used as
ObjectUtils.defaultIfNull("a","b");
.
This constructor is public to permit tools that require a JavaBean instance to operate.
public static Object defaultIfNull(Object object, Object defaultValue)
Returns a default value if the object passed is null
.
ObjectUtils.defaultIfNull(null, null) = null ObjectUtils.defaultIfNull(null, "") = "" ObjectUtils.defaultIfNull(null, "zz") = "zz" ObjectUtils.defaultIfNull("abc", *) = "abc" ObjectUtils.defaultIfNull(Boolean.TRUE, *) = Boolean.TRUE
object
- the Object
to test, may be null
defaultValue
- the default value to return, may be null
object
if it is not null
,
defaultValue otherwisepublic static boolean equals(Object object1, Object object2)
Compares two objects for equality, where either one or both objects may
be null
.
ObjectUtils.equals(null, null) = true ObjectUtils.equals(null, "") = false ObjectUtils.equals("", null) = false ObjectUtils.equals("", "") = true ObjectUtils.equals(Boolean.TRUE, null) = false ObjectUtils.equals(Boolean.TRUE, "true") = false ObjectUtils.equals(Boolean.TRUE, Boolean.TRUE) = true ObjectUtils.equals(Boolean.TRUE, Boolean.FALSE) = false
object1
- the first object, may be null
object2
- the second object, may be null
true
if the values of both objects are the samepublic static int hashCode(Object obj)
Gets the hash code of an object returning zero when the object is
null
.
ObjectUtils.hashCode(null) = 0 ObjectUtils.hashCode(obj) = obj.hashCode()
obj
- the object to obtain the hash code of, may be
null
public static String identityToString(Object object)
Gets the toString that would be produced by Object
if a
class did not override toString itself. null
will return
null
.
ObjectUtils.identityToString(null) = null ObjectUtils.identityToString("") = "java.lang.String@1e23" ObjectUtils.identityToString(Boolean.TRUE) = "java.lang.Boolean@7fa"
object
- the object to create a toString for, may be null
null
if
null
passed inpublic static StringBuffer appendIdentityToString(StringBuffer buffer, Object object)
Appends the toString that would be produced by Object
if a
class did not override toString itself. null
will return
null
.
ObjectUtils.appendIdentityToString(*, null) = null ObjectUtils.appendIdentityToString(null, "") = "java.lang.String@1e23" ObjectUtils.appendIdentityToString(null, Boolean.TRUE) = "java.lang.Boolean@7fa" ObjectUtils.appendIdentityToString(buf, Boolean.TRUE) = buf.append("java.lang.Boolean@7fa")
buffer
- the buffer to append to, may be null
object
- the object to create a toString for, may be null
null
if
null
passed inpublic static String toString(Object obj)
Gets the toString
of an Object
returning an
empty string ("") if null
input.
ObjectUtils.toString(null) = "" ObjectUtils.toString("") = "" ObjectUtils.toString("bat") = "bat" ObjectUtils.toString(Boolean.TRUE) = "true"
obj
- the Object to toString
, may be nullnull
inputString.valueOf(Object)
public static String toString(Object obj, String nullStr)
Gets the toString
of an Object
returning a
specified text if null
input.
ObjectUtils.toString(null, null) = null ObjectUtils.toString(null, "null") = "null" ObjectUtils.toString("", "null") = "" ObjectUtils.toString("bat", "null") = "bat" ObjectUtils.toString(Boolean.TRUE, "null") = "true"
obj
- the Object to toString
, may be nullnullStr
- the String to return if null
input, may be nullnull
inputString.valueOf(Object)
Copyright © 2003–2014 The Apache Software Foundation. All rights reserved.