类 ObjectUtils
Mainly for internal use within the framework.
Thanks to Alex Ruiz for contributing several enhancements to this class!
- 作者:
- Juergen Hoeller, Keith Donald, Rod Johnson, Rob Harrop, Chris Beams, Sam Brannen, TODAY 2019-08-23 00:16
- 另请参阅:
-
字段概要
字段 -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明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 <A,O extends A>
A[]addObjectToArray(A[] array, O obj, int position) Add the given object to the given array at the specified position, returning a new array consisting of the input array contents plus the given object.private static booleanarrayEquals(Object o1, Object o2) Compare the given arrays withArrays.equals, performing an equality check based on the array elements rather than the array reference.static <E extends Enum<?>>
EcaseInsensitiveValueOf(E[] enumValues, String constant) Case insensitive alternative toEnum.valueOf(Class, String).static booleancontainsConstant(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 booleancontainsConstant(Enum<?>[] enumValues, String constant, boolean caseSensitive) Check whether the given array of enum constants contains a constant with the given name.static booleancontainsElement(Object[] array, Object element) Check whether the given array contains the given element.static StringgetClassName(Object obj) get object class namestatic StringgetDisplayString(Object obj) Return a content-based String representation ifobjis notnull; otherwise returns an empty String.static StringReturn a hex String form of an object's identity hash code.static StringidentityToString(Object obj) Return a String representation of an object's overall identity.static booleanDetermine whether the given object is an array: either an Object array or a primitive array.static booleanReturn whether the given throwable is a checked exception: that is, neither a RuntimeException nor an Error.static booleanisCompatibleWithThrowsClause(Throwable ex, Class<?>... declaredExceptions) Check whether the given exception is compatible with the specified exception types, as declared in a throws clause.static booleanDetermine whether the given object is empty.static booleanDetermine whether the given array is empty: i.e.static booleanisNotEmpty(Object obj) static booleanisNotEmpty(Object[] array) static StringnullSafeClassName(Object obj) Determine the class name for the given object.static StringGenerate a null-safe, concise string representation of the supplied object as described below.static booleannullSafeEquals(Object o1, Object o2) Determine if the given objects are equal, returningtrueif both arenullorfalseif only one isnull.static intnullSafeHash(Object... elements) Return a hash code for the given elements, delegating tonullSafeHashCode(Object)for each element.static intnullSafeHashCode(Object obj) Return a hash code for the given object; typically the value ofObject#hashCode()}.static StringnullSafeToString(boolean[] array) Return a String representation of the contents of the specified array.static StringnullSafeToString(byte[] array) Return a String representation of the contents of the specified array.static StringnullSafeToString(char[] array) Return a String representation of the contents of the specified array.static StringnullSafeToString(double[] array) Return a String representation of the contents of the specified array.static StringnullSafeToString(float[] array) Return a String representation of the contents of the specified array.static StringnullSafeToString(int[] array) Return a String representation of the contents of the specified array.static StringnullSafeToString(long[] array) Return a String representation of the contents of the specified array.static StringnullSafeToString(short[] array) Return a String representation of the contents of the specified array.static StringnullSafeToString(Object obj) Return a String representation of the specified Object.static StringnullSafeToString(Object[] array) Return a String representation of the contents of the specified array.static <T> TparseArray(String[] source, Class<T> targetClass) static ObjecttoArrayObject(String[] source, Class<?> targetClass) To array objectstatic StringtoHexString(Object obj) 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 StringReturn a String from none-null object'stoString.static ObjectunwrapOptional(Object obj) Unwrap the given object which is potentially aOptional.
-
字段详细资料
-
INITIAL_HASH
private static final int INITIAL_HASH- 另请参阅:
-
MULTIPLIER
private static final int MULTIPLIER- 另请参阅:
-
NULL_STRING
- 另请参阅:
-
ARRAY_START
- 另请参阅:
-
ARRAY_END
- 另请参阅:
-
EMPTY_ARRAY
- 另请参阅:
-
ARRAY_ELEMENT_SEPARATOR
- 另请参阅:
-
NON_EMPTY_ARRAY
- 另请参阅:
-
EMPTY_COLLECTION
- 另请参阅:
-
NON_EMPTY_COLLECTION
- 另请参阅:
-
-
构造器详细资料
-
ObjectUtils
public ObjectUtils()
-
-
方法详细资料
-
isCheckedException
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
- 从以下版本开始:
- 4.0
- 另请参阅:
-
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
- 从以下版本开始:
- 4.0
-
isArray
Determine whether the given object is an array: either an Object array or a primitive array.- 参数:
obj- the object to check- 从以下版本开始:
- 3.0
-
isEmpty
Determine whether the given array is empty: i.e.nullor of zero length.- 参数:
array- the array to check- 另请参阅:
-
isEmpty
Determine whether the given object is empty.This method supports the following object types.
Optional: considered empty if notOptional.isPresent()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- 返回:
trueif the object isnullor empty- 另请参阅:
-
isNotEmpty
-
isNotEmpty
-
unwrapOptional
Unwrap the given object which is potentially aOptional.- 参数:
obj- the candidate object- 返回:
- either the value held within the
Optional,nullif theOptionalis empty, or simply the given object as-is - 从以下版本开始:
- 3.0
-
toArrayObject
To array object- 参数:
source- String arraytargetClass- Target class- 返回:
- An array object
- 抛出:
ConversionException- If can't convert source to target type object
-
parseArray
-
containsElement
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
- 从以下版本开始:
- 3.0
-
containsConstant
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
- 从以下版本开始:
- 4.0
-
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
- 从以下版本开始:
- 4.0
-
caseInsensitiveValueOf
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
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) - 从以下版本开始:
- 3.0
-
addObjectToArray
public static <A,O extends A> A[] addObjectToArray(@Nullable A[] array, @Nullable O obj, int position) Add the given object to the given array at the specified position, returning a new array consisting of the input array contents plus the given object.- 参数:
array- the array to add to (can benull)obj- the object to appendposition- the position at which to add the object- 返回:
- the new array (of the same component type; never
null) - 从以下版本开始:
- 4.0
-
toObjectArray
Convert the given array (which may be a primitive array) to an object array (if necessary of primitive wrapper objects).A
nullsource 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- 从以下版本开始:
- 3.0
-
nullSafeEquals
Determine if the given objects are equal, returningtrueif both arenullorfalseif 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
- 另请参阅:
-
arrayEquals
Compare the given arrays withArrays.equals, performing an equality check based on the array elements rather than the array reference.- 参数:
o1- first array to compareo2- second array to compare- 返回:
- whether the given objects are equal
- 另请参阅:
-
nullSafeHash
Return a hash code for the given elements, delegating tonullSafeHashCode(Object)for each element. Contrary toObjects.hash(Object...), this method can handle an element that is an array.- 参数:
elements- the elements to be hashed- 返回:
- a hash value of the elements
- 从以下版本开始:
- 4.0
-
nullSafeHashCode
Return a hash code for the given object; typically the value ofObject#hashCode()}. If the object is an array, this method will delegate to any of theArrays.hashCodemethods. If the object isnull, this method returns 0.- 另请参阅:
-
toHexString
-
identityToString
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
Return a hex String form of an object's identity hash code.- 参数:
obj- the object- 返回:
- the object's identity code in hex notation
-
getDisplayString
Return a content-based String representation ifobjis notnull; otherwise returns an empty String.Differs from
nullSafeToString(Object)in that it returns an empty String rather than "null" for anullvalue.- 参数:
obj- the object to build a display String for- 返回:
- a display String representation of
obj - 另请参阅:
-
nullSafeClassName
Determine the class name for the given object.Returns a
"null"String ifobjisnull.- 参数:
obj- the object to introspect (may benull)- 返回:
- the corresponding class name
-
nullSafeToString
Return a String representation of the specified Object.Builds a String representation of the contents in case of an array. Returns a
"null"String ifobjisnull.- 参数:
obj- the object to build a String representation for- 返回:
- a String representation of
obj
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeToString
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 ifarrayisnull.- 参数:
array- the array to build a String representation for- 返回:
- a String representation of
array
-
nullSafeConciseToString
Generate a null-safe, concise string representation of the supplied object as described below.Favor this method over
nullSafeToString(Object)when you need the length of the generated string to be limited.Returns:
"null"ifobjisnull"Optional.empty"ifobjis an emptyOptional"Optional[<concise-string>]"ifobjis a non-emptyOptional, where<concise-string>is the result of invokingnullSafeConciseToString(java.lang.Object)on the object contained in theOptional"{}"ifobjis an empty array orMap"{...}"ifobjis a non-empty array orMap"[]"ifobjis an emptyCollection"[...]"ifobjis a non-emptyCollection- Class name if
objis aClass - Charset name if
objis aCharset - TimeZone ID if
objis aTimeZone - Zone ID if
objis aZoneId - Potentially truncated string
if
objis aStringorCharSequence - Potentially truncated string
if
objis a simple value type whosetoString()method returns a non-null value - Otherwise, a string representation of the object's type name concatenated
with
"@"and a hex string form of the object's identity hash code
In the context of this method, a simple value type is any of the following: primitive wrapper (excluding
Void),Enum,Number,Date,Temporal,File,Path,URI,URL,InetAddress,Currency,Locale,UUID,Pattern.- 参数:
obj- the object to build a string representation for- 返回:
- a concise string representation of the supplied object
- 从以下版本开始:
- 4.0
- 另请参阅:
-
toString
Return a String from none-null object'stoString.- 参数:
obj- the object to build a String representation for- 返回:
- a String representation of
obj
-
getClassName
get object class name- 参数:
obj- target- 返回:
- class name
- 抛出:
NullPointerException- if obj is null
-