类 ObjectUtils
- java.lang.Object
- org.springframework.util.ObjectUtils
public abstract class ObjectUtils extends Object
Miscellaneous object utility methods.Mainly for internal use within the framework.
Thanks to Alex Ruiz for contributing several enhancements to this class!
- 从以下版本开始:
- 19.03.2004
- 作者:
- Juergen Hoeller, Keith Donald, Rod Johnson, Rob Harrop, Chris Beams, Sam Brannen
- 另请参阅:
ClassUtils
,CollectionUtils
,StringUtils
构造器概要
构造器 构造器 说明 ObjectUtils()
方法概要
所有方法 静态方法 具体方法 已过时的方法 修饰符和类型 方法 说明 static <A,O extends A>
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 Enum<?>>
EcaseInsensitiveValueOf(E[] enumValues, String constant)
Case insensitive alternative toEnum.valueOf(Class, String)
.static boolean
containsConstant(Enum<?>[] enumValues, 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(Enum<?>[] enumValues, String constant, boolean caseSensitive)
Check whether the given array of enum constants contains a constant with the given name.static boolean
containsElement(Object[] array, Object element)
Check whether the given array contains the given element.static String
getDisplayString(Object obj)
Return a content-based String representation ifobj
is notnull
; otherwise returns an empty String.static String
getIdentityHexString(Object obj)
Return a hex String form of an object's identity hash code.static int
hashCode(boolean bool)
已过时。as of Spring Framework 5.0, in favor of the native JDK 8 variantstatic int
hashCode(double dbl)
已过时。as of Spring Framework 5.0, in favor of the native JDK 8 variantstatic int
hashCode(float flt)
已过时。as of Spring Framework 5.0, in favor of the native JDK 8 variantstatic int
hashCode(long lng)
已过时。as of Spring Framework 5.0, in favor of the native JDK 8 variantstatic String
identityToString(Object obj)
Return a String representation of an object's overall identity.static boolean
isArray(Object obj)
Determine whether the given object is an array: either an Object array or a primitive array.static boolean
isCheckedException(Throwable ex)
Return whether the given throwable is a checked exception: that is, neither a RuntimeException nor an Error.static boolean
isCompatibleWithThrowsClause(Throwable ex, Class<?>... declaredExceptions)
Check whether the given exception is compatible with the specified exception types, as declared in a throws clause.static boolean
isEmpty(Object obj)
Determine whether the given object is empty.static boolean
isEmpty(Object[] array)
Determine whether the given array is empty: i.e.static String
nullSafeClassName(Object obj)
Determine the class name for the given object.static boolean
nullSafeEquals(Object o1, Object o2)
Determine if the given objects are equal, returningtrue
if both arenull
orfalse
if only one isnull
.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(short[] array)
Return a hash code based on the contents of the specified array.static int
nullSafeHashCode(Object obj)
Return as hash code for the given object; typically the value ofObject#hashCode()
}.static int
nullSafeHashCode(Object[] array)
Return a hash code based on the contents of the specified array.static String
nullSafeToString(boolean[] array)
Return a String representation of the contents of the specified array.static String
nullSafeToString(byte[] array)
Return a String representation of the contents of the specified array.static String
nullSafeToString(char[] array)
Return a String representation of the contents of the specified array.static String
nullSafeToString(double[] array)
Return a String representation of the contents of the specified array.static String
nullSafeToString(float[] array)
Return a String representation of the contents of the specified array.static String
nullSafeToString(int[] array)
Return a String representation of the contents of the specified array.static String
nullSafeToString(long[] array)
Return a String representation of the contents of the specified array.static String
nullSafeToString(short[] array)
Return a String representation of the contents of the specified array.static String
nullSafeToString(Object obj)
Return a String representation of the specified Object.static String
nullSafeToString(Object[] array)
Return a String representation of the contents of the specified array.static Object[]
toObjectArray(Object source)
Convert the given array (which may be a primitive array) to an object array (if necessary of primitive wrapper objects).static Object
unwrapOptional(Object obj)
Unwrap the given object which is potentially aOptional
.
构造器详细资料
ObjectUtils
public ObjectUtils()
方法详细资料
isCheckedException
public static boolean isCheckedException(Throwable ex)
Return whether the given throwable is a checked exception: that is, neither a RuntimeException nor an Error.- 参数:
ex
- the throwable to check- 返回:
- whether the throwable is a checked exception
- 另请参阅:
Exception
,RuntimeException
,Error
isCompatibleWithThrowsClause
public static boolean isCompatibleWithThrowsClause(Throwable ex, @Nullable Class<?>... declaredExceptions)
Check whether the given exception is compatible with the specified exception types, as declared in a throws clause.- 参数:
ex
- the exception to checkdeclaredExceptions
- the exception types declared in the throws clause- 返回:
- whether the given exception is compatible
isArray
public static boolean isArray(@Nullable Object obj)
Determine whether the given object is an array: either an Object array or a primitive array.- 参数:
obj
- the object to check
isEmpty
public static boolean isEmpty(@Nullable Object[] array)
Determine whether the given array is empty: i.e.null
or of zero length.- 参数:
array
- the array to check- 另请参阅:
isEmpty(Object)
isEmpty
public static boolean isEmpty(@Nullable Object obj)
Determine whether the given object is empty.This method supports the following object types.
Optional
: considered empty ifOptional.empty()
Array
: considered empty if its length is zeroCharSequence
: considered empty if its length is zeroCollection
: delegates toCollection.isEmpty()
Map
: delegates toMap.isEmpty()
If the given object is non-null and not one of the aforementioned supported types, this method returns
false
.- 参数:
obj
- the object to check- 返回:
true
if the object isnull
or empty- 从以下版本开始:
- 4.2
- 另请参阅:
Optional.isPresent()
,isEmpty(Object[])
,StringUtils.hasLength(CharSequence)
,StringUtils.isEmpty(Object)
,CollectionUtils.isEmpty(java.util.Collection)
,CollectionUtils.isEmpty(java.util.Map)
unwrapOptional
@Nullable public static Object unwrapOptional(@Nullable Object obj)
Unwrap the given object which is potentially aOptional
.- 参数:
obj
- the candidate object- 返回:
- either the value held within the
Optional
,null
if theOptional
is empty, or simply the given object as-is - 从以下版本开始:
- 5.0
containsElement
public static boolean containsElement(@Nullable Object[] array, Object element)
Check whether the given array contains the given element.- 参数:
array
- the array to check (may benull
, in which case the return value will always befalse
)element
- the element to check for- 返回:
- whether the element has been found in the given array
containsConstant
public static boolean containsConstant(Enum<?>[] enumValues, String constant)
Check whether the given array of enum constants contains a constant with the given name, ignoring case when determining a match.- 参数:
enumValues
- the enum values to check, typically obtained viaMyEnum.values()
constant
- the constant name to find (must not be null or empty string)- 返回:
- whether the constant has been found in the given array
containsConstant
public static boolean containsConstant(Enum<?>[] enumValues, String constant, boolean caseSensitive)
Check whether the given array of enum constants contains a constant with the given name.- 参数:
enumValues
- the enum values to check, typically obtained viaMyEnum.values()
constant
- the constant name to find (must not be null or empty string)caseSensitive
- whether case is significant in determining a match- 返回:
- whether the constant has been found in the given array
caseInsensitiveValueOf
public static <E extends Enum<?>> E caseInsensitiveValueOf(E[] enumValues, String constant)
Case insensitive alternative toEnum.valueOf(Class, String)
.- 类型参数:
E
- the concrete Enum type- 参数:
enumValues
- the array of all Enum constants in question, usually perEnum.values()
constant
- the constant to get the enum value of- 抛出:
IllegalArgumentException
- if the given constant is not found in the given array of enum values. UsecontainsConstant(Enum[], String)
as a guard to avoid this exception.
addObjectToArray
public static <A,O extends A> A[] addObjectToArray(@Nullable A[] array, @Nullable O obj)
Append the given object to the given array, returning a new array consisting of the input array contents plus the given object.- 参数:
array
- the array to append to (can benull
)obj
- the object to append- 返回:
- the new array (of the same component type; never
null
)
toObjectArray
public static Object[] toObjectArray(@Nullable Object source)
Convert the given array (which may be a primitive array) to an object array (if necessary of primitive wrapper objects).A
null
source value will be converted to an empty Object array.- 参数:
source
- the (potentially primitive) array- 返回:
- the corresponding object array (never
null
) - 抛出:
IllegalArgumentException
- if the parameter is not an array
nullSafeEquals
public static boolean nullSafeEquals(@Nullable Object o1, @Nullable Object o2)
Determine if the given objects are equal, returningtrue
if both arenull
orfalse
if only one isnull
.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 compare- 返回:
- whether the given objects are equal
- 另请参阅:
Object.equals(Object)
,Arrays.equals(long[], long[])
nullSafeHashCode
public static int nullSafeHashCode(@Nullable Object obj)
Return as hash code for the given object; typically the value ofObject#hashCode()
}. If the object is an array, this method will delegate to any of thenullSafeHashCode
methods for arrays in this class. If the object isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable Object[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable boolean[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable byte[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable char[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable double[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable float[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable int[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable long[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
nullSafeHashCode
public static int nullSafeHashCode(@Nullable short[] array)
Return a hash code based on the contents of the specified array. Ifarray
isnull
, this method returns 0.
hashCode
@Deprecated public static int hashCode(boolean bool)
已过时。as of Spring Framework 5.0, in favor of the native JDK 8 variantReturn the same value asBoolean.hashCode(boolean)
}.
hashCode
@Deprecated public static int hashCode(double dbl)
已过时。as of Spring Framework 5.0, in favor of the native JDK 8 variantReturn the same value asDouble.hashCode(double)
}.
hashCode
@Deprecated public static int hashCode(float flt)
已过时。as of Spring Framework 5.0, in favor of the native JDK 8 variantReturn the same value asFloat.hashCode(float)
}.
hashCode
@Deprecated public static int hashCode(long lng)
已过时。as of Spring Framework 5.0, in favor of the native JDK 8 variantReturn the same value asLong.hashCode(long)
}.
identityToString
public static String identityToString(@Nullable Object obj)
Return a String representation of an object's overall identity.- 参数:
obj
- the object (may benull
)- 返回:
- the object's identity as String representation, or an empty String if the object was
null
getIdentityHexString
public static String getIdentityHexString(Object obj)
Return a hex String form of an object's identity hash code.- 参数:
obj
- the object- 返回:
- the object's identity code in hex notation
getDisplayString
public static String getDisplayString(@Nullable Object obj)
Return a content-based String representation ifobj
is notnull
; otherwise returns an empty String.Differs from
nullSafeToString(Object)
in that it returns an empty String rather than "null" for anull
value.- 参数:
obj
- the object to build a display String for- 返回:
- a display String representation of
obj
- 另请参阅:
nullSafeToString(Object)
nullSafeClassName
public static String nullSafeClassName(@Nullable Object obj)
Determine the class name for the given object.Returns a
"null"
String ifobj
isnull
.- 参数:
obj
- the object to introspect (may benull
)- 返回:
- the corresponding class name
nullSafeToString
public static String nullSafeToString(@Nullable Object obj)
Return a String representation of the specified Object.Builds a String representation of the contents in case of an array. Returns a
"null"
String ifobj
isnull
.- 参数:
obj
- the object to build a String representation for- 返回:
- a String representation of
obj
nullSafeToString
public static String nullSafeToString(@Nullable Object[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array
nullSafeToString
public static String nullSafeToString(@Nullable boolean[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array
nullSafeToString
public static String nullSafeToString(@Nullable byte[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array
nullSafeToString
public static String nullSafeToString(@Nullable char[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array
nullSafeToString
public static String nullSafeToString(@Nullable double[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array
nullSafeToString
public static String nullSafeToString(@Nullable float[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array
nullSafeToString
public static String nullSafeToString(@Nullable int[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array
nullSafeToString
public static String nullSafeToString(@Nullable long[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array
nullSafeToString
public static String nullSafeToString(@Nullable short[] array)
Return a String representation of the contents of the specified 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 a"null"
String ifarray
isnull
.- 参数:
array
- the array to build a String representation for- 返回:
- a String representation of
array