public class UObjectUtil extends Object
Constructor and Description |
---|
UObjectUtil() |
Modifier and Type | Method and Description |
---|---|
static <T> T |
clone(T obj)
克隆对象
如果对象实现Cloneable接口,调用其clone方法 如果实现Serializable接口,执行深度克隆 否则返回 null |
static <T> T |
cloneByStream(T obj)
序列化后拷贝流的方式克隆
对象必须实现Serializable接口 |
static <T extends Comparable<? super T>> |
compare(T c1,
T c2)
null 安全的对象比较,null 对象排在末尾 |
static <T> T |
defaultIfNull(T object,
T defaultValue)
如果给定对象为
null 返回默认值 |
static boolean |
equal(Object obj1,
Object obj2)
比较两个对象是否相等。
相同的条件有两个,满足其一即可: obj1 == null && obj2 == null obj1.equals(obj2) 1. |
static boolean |
isNull(Object obj)
检查对象是否为null
判断标准为: |
static boolean |
isValidIfNumber(Object obj)
检查是否为有效的数字
检查Double和Float是否为无限大,或者Not a Number 非数字类型和Null将返回true |
public static boolean equal(Object obj1, Object obj2)
obj1
- 对象1obj2
- 对象2public static boolean isNull(Object obj)
1. == null 2. equals(null)
obj
- 对象public static <T extends Comparable<? super T>> int compare(T c1, T c2)
null
安全的对象比较,null
对象排在末尾T
- 被比较对象类型c1
- 对象1,可以为null
c2
- 对象2,可以为null
Comparator.compare(Object, Object)
public static boolean isValidIfNumber(Object obj)
obj
- 被检查类型public static <T> T cloneByStream(T obj)
T
- 对象类型obj
- 被克隆对象UtilException
- IO异常和ClassNotFoundException封装public static <T> T clone(T obj)
null
T
- 对象类型obj
- 被克隆对象public static <T> T defaultIfNull(T object, T defaultValue)
null
返回默认值
UObjectUtil.defaultIfNull(null, null) = null UObjectUtil.defaultIfNull(null, "") = "" UObjectUtil.defaultIfNull(null, "zz") = "zz" UObjectUtil.defaultIfNull("abc", *) = "abc" UObjectUtil.defaultIfNull(Boolean.TRUE, *) = Boolean.TRUE
T
- 对象类型object
- 被检查对象,可能为null
defaultValue
- 被检查对象为null
返回的默认值,可以为null
null
返回默认值,否则返回原值Copyright © 2020. All rights reserved.