public abstract class ObjectUtils
extends java.lang.Object
Mainly for internal use within the framework; consider Jakarta's Commons Lang for a more comprehensive suite of object utilities.
Thanks to Alex Ruiz for contributing several enhancements to this class!
org.apache.commons.lang.ObjectUtils
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
ARRAY_ELEMENT_SEPARATOR |
private static java.lang.String |
ARRAY_END |
private static java.lang.String |
ARRAY_START |
private static java.lang.String |
EMPTY_ARRAY |
private static java.lang.String |
EMPTY_STRING |
private static int |
INITIAL_HASH |
private static int |
MULTIPLIER |
private static java.lang.String |
NULL_STRING |
Constructor and Description |
---|
ObjectUtils() |
Modifier and Type | Method and Description |
---|---|
static <A,O extends A> |
addObjectToArray(A[] array,
O obj)
Append the given object to the given array, returning a new array
consisting of the input array contents plus the given object.
|
static <E extends java.lang.Enum<?>> |
caseInsensitiveValueOf(E[] enumValues,
java.lang.String constant)
Case insensitive alternative to
Enum.valueOf(Class, String) . |
static boolean |
containsConstant(java.lang.Enum<?>[] enumValues,
java.lang.String constant)
Check whether the given array of enum constants contains a constant with the given name,
ignoring case when determining a match.
|
static boolean |
containsConstant(java.lang.Enum<?>[] enumValues,
java.lang.String constant,
boolean caseSensitive)
Check whether the given array of enum constants contains a constant with the given name.
|
static boolean |
containsElement(java.lang.Object[] array,
java.lang.Object element)
Check whether the given array contains the given element.
|
static java.lang.String |
getDisplayString(java.lang.Object obj)
Return a content-based String representation if
obj is
not null ; otherwise returns an empty String. |
static java.lang.String |
getIdentityHexString(java.lang.Object obj)
Return a hex String form of an object's identity hash code.
|
static int |
hashCode(boolean bool)
Return the same value as
. |
static int |
hashCode(double dbl)
Return the same value as
. |
static int |
hashCode(float flt)
Return the same value as
. |
static int |
hashCode(long lng)
Return the same value as
. |
static java.lang.String |
identityToString(java.lang.Object obj)
Return a String representation of an object's overall identity.
|
static boolean |
isArray(java.lang.Object obj)
Determine whether the given object is an array:
either an Object array or a primitive array.
|
static boolean |
isCheckedException(java.lang.Throwable ex)
Return whether the given throwable is a checked exception:
that is, neither a RuntimeException nor an Error.
|
static boolean |
isCompatibleWithThrowsClause(java.lang.Throwable ex,
java.lang.Class[] declaredExceptions)
Check whether the given exception is compatible with the exceptions
declared in a throws clause.
|
static boolean |
isEmpty(java.lang.Object[] array)
Determine whether the given array is empty:
i.e.
|
static java.lang.String |
nullSafeClassName(java.lang.Object obj)
Determine the class name for the given object.
|
static boolean |
nullSafeEquals(java.lang.Object o1,
java.lang.Object o2)
Determine if the given objects are equal, returning
true
if both are null or false if only one is
null . |
static int |
nullSafeHashCode(boolean[] array)
Return a hash code based on the contents of the specified array.
|
static int |
nullSafeHashCode(byte[] array)
Return a hash code based on the contents of the specified array.
|
static int |
nullSafeHashCode(char[] array)
Return a hash code based on the contents of the specified array.
|
static int |
nullSafeHashCode(double[] array)
Return a hash code based on the contents of the specified array.
|
static int |
nullSafeHashCode(float[] array)
Return a hash code based on the contents of the specified array.
|
static int |
nullSafeHashCode(int[] array)
Return a hash code based on the contents of the specified array.
|
static int |
nullSafeHashCode(long[] array)
Return a hash code based on the contents of the specified array.
|
static int |
nullSafeHashCode(java.lang.Object obj)
Return as hash code for the given object; typically the value of
. |
static int |
nullSafeHashCode(java.lang.Object[] array)
Return a hash code based on the contents of the specified array.
|
static int |
nullSafeHashCode(short[] array)
Return a hash code based on the contents of the specified array.
|
static java.lang.String |
nullSafeToString(boolean[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.String |
nullSafeToString(byte[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.String |
nullSafeToString(char[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.String |
nullSafeToString(double[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.String |
nullSafeToString(float[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.String |
nullSafeToString(int[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.String |
nullSafeToString(long[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.String |
nullSafeToString(java.lang.Object obj)
Return a String representation of the specified Object.
|
static java.lang.String |
nullSafeToString(java.lang.Object[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.String |
nullSafeToString(short[] array)
Return a String representation of the contents of the specified array.
|
static java.lang.Object[] |
toObjectArray(java.lang.Object source)
Convert the given array (which may be a primitive array) to an
object array (if necessary of primitive wrapper objects).
|
private static final int INITIAL_HASH
private static final int MULTIPLIER
private static final java.lang.String EMPTY_STRING
private static final java.lang.String NULL_STRING
private static final java.lang.String ARRAY_START
private static final java.lang.String ARRAY_END
private static final java.lang.String EMPTY_ARRAY
private static final java.lang.String ARRAY_ELEMENT_SEPARATOR
public static boolean isCheckedException(java.lang.Throwable ex)
ex
- the throwable to checkException
,
RuntimeException
,
Error
public static boolean isCompatibleWithThrowsClause(java.lang.Throwable ex, java.lang.Class[] declaredExceptions)
ex
- the exception to checkeddeclaredExceptions
- the exceptions declared in the throws clausepublic static boolean isArray(java.lang.Object obj)
obj
- the object to checkpublic static boolean isEmpty(java.lang.Object[] array)
null
or of zero length.array
- the array to checkpublic static boolean containsElement(java.lang.Object[] array, java.lang.Object element)
array
- the array to check (may be null
,
in which case the return value will always be false
)element
- the element to check forpublic static boolean containsConstant(java.lang.Enum<?>[] enumValues, java.lang.String constant)
enumValues
- the enum values to check, typically the product of a call to MyEnum.values()constant
- the constant name to find (must not be null or empty string)public static boolean containsConstant(java.lang.Enum<?>[] enumValues, java.lang.String constant, boolean caseSensitive)
enumValues
- the enum values to check, typically the product of a call to MyEnum.values()constant
- the constant name to find (must not be null or empty string)caseSensitive
- whether case is significant in determining a matchpublic static <E extends java.lang.Enum<?>> E caseInsensitiveValueOf(E[] enumValues, java.lang.String constant)
Enum.valueOf(Class, String)
.E
- the concrete Enum typeenumValues
- the array of all Enum constants in question, usually per Enum.values()constant
- the constant to get the enum value ofjava.lang.IllegalArgumentException
- if the given constant is not found in the given array
of enum values. Use containsConstant(Enum[], String)
as a guard to avoid this exception.public static <A,O extends A> A[] addObjectToArray(A[] array, O obj)
array
- the array to append to (can be null
)obj
- the object to appendnull
)public static java.lang.Object[] toObjectArray(java.lang.Object source)
A null
source value will be converted to an
empty Object array.
source
- the (potentially primitive) arraynull
)java.lang.IllegalArgumentException
- if the parameter is not an arraypublic static boolean nullSafeEquals(java.lang.Object o1, java.lang.Object o2)
true
if both are null
or false
if only one is
null
.
Compares arrays with Arrays.equals
, performing an equality
check based on the array elements rather than the array reference.
o1
- first Object to compareo2
- second Object to compareArrays.equals(long[], long[])
public static int nullSafeHashCode(java.lang.Object obj)
Object.hashCode()
. If the object is an array,
this method will delegate to any of the nullSafeHashCode
methods for arrays in this class. If the object is null
,
this method returns 0.public static int nullSafeHashCode(java.lang.Object[] array)
array
is null
, this method returns 0.public static int nullSafeHashCode(boolean[] array)
array
is null
, this method returns 0.public static int nullSafeHashCode(byte[] array)
array
is null
, this method returns 0.public static int nullSafeHashCode(char[] array)
array
is null
, this method returns 0.public static int nullSafeHashCode(double[] array)
array
is null
, this method returns 0.public static int nullSafeHashCode(float[] array)
array
is null
, this method returns 0.public static int nullSafeHashCode(int[] array)
array
is null
, this method returns 0.public static int nullSafeHashCode(long[] array)
array
is null
, this method returns 0.public static int nullSafeHashCode(short[] array)
array
is null
, this method returns 0.public static int hashCode(boolean bool)
Boolean.hashCode()
.Boolean.hashCode()
public static int hashCode(double dbl)
Double.hashCode()
.Double.hashCode()
public static int hashCode(float flt)
Float.hashCode()
.Float.hashCode()
public static int hashCode(long lng)
Long.hashCode()
.Long.hashCode()
public static java.lang.String identityToString(java.lang.Object obj)
obj
- the object (may be null
)null
public static java.lang.String getIdentityHexString(java.lang.Object obj)
obj
- the objectpublic static java.lang.String getDisplayString(java.lang.Object obj)
obj
is
not null
; otherwise returns an empty String.
Differs from nullSafeToString(Object)
in that it returns
an empty String rather than "null" for a null
value.
obj
- the object to build a display String forobj
nullSafeToString(Object)
public static java.lang.String nullSafeClassName(java.lang.Object obj)
Returns "null"
if obj
is null
.
obj
- the object to introspect (may be null
)public static java.lang.String nullSafeToString(java.lang.Object obj)
Builds a String representation of the contents in case of an array.
Returns "null"
if obj
is null
.
obj
- the object to build a String representation forobj
public static java.lang.String nullSafeToString(java.lang.Object[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray
public static java.lang.String nullSafeToString(boolean[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray
public static java.lang.String nullSafeToString(byte[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray
public static java.lang.String nullSafeToString(char[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray
public static java.lang.String nullSafeToString(double[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray
public static java.lang.String nullSafeToString(float[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray
public static java.lang.String nullSafeToString(int[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray
public static java.lang.String nullSafeToString(long[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray
public static java.lang.String nullSafeToString(short[] array)
The String representation consists of a list of the array's elements,
enclosed in curly braces ("{}"
). Adjacent elements are separated
by the characters ", "
(a comma followed by a space). Returns
"null"
if array
is null
.
array
- the array to build a String representation forarray