类 X
- java.lang.Object
-
- me.codeplayer.util.X
-
public abstract class X extends java.lang.Object通用公共工具类
此类全为静态方法,请使用静态方法的形式调用
由于均为静态方法,所以类名尽可能地短,以免干扰逻辑可读性
并且工具类会经常被调用,类名短,也方便开发人员编写。- 作者:
- Ready
-
-
构造器概要
构造器 构造器 说明 X()
-
方法概要
所有方法 静态方法 具体方法 修饰符和类型 方法 说明 static <T> TcastType(java.lang.Object obj)将指定泛型对象进行泛型擦除,并转换为对应的泛型声明static <T> Tdecode(java.lang.Object input, java.lang.Object... expressions)将指定的值根据指定的表达式解析,并返回解析后的结果static <T extends java.util.Collection<?>>
TemptyToNull(T c)尝试将空集合转为 nullstatic <T> T[]emptyToNull(T[] array)尝试将空数组转为 nullstatic <T> inteqLax(T inputVal, T currentVal)宽松地比较两个实体的指定属性值是否相等,并返回比较结果static <T,R>
inteqLax(T input, T current, java.util.function.Function<T,R> getter)宽松地比较两个实体的指定属性值是否相等static <T,R>
RexpectEquals(T input, T current, java.util.function.Function<T,R> getter, java.util.function.BiConsumer<T,R> setIfNull)期望两个实体的指定属性值是相等的,并返回该值。static <T,R>
RexpectEquals(T input, T current, java.util.function.Function<T,R> getter, java.util.function.BiConsumer<T,R> setIfNull, java.lang.Object error)期望两个实体的指定属性值是相等的,并返回该值。static <T,R>
RexpectEqualsBasedOld(T input, T old, java.util.function.Function<T,R> getter, java.util.function.Consumer<R> setOldIfInputNul)期望两个实体的指定属性值是相等的,并返回该值。static <T,R>
RexpectEqualsBasedOld(T input, T old, java.util.function.Function<T,R> getter, java.util.function.Consumer<R> setOldIfInputNull, java.lang.Object error)期望两个实体的指定属性值是相等的,并返回该值。static java.lang.StringexpectNotEmpty(java.lang.String v1, java.lang.String v2)从指定的多个字符串依次检测并选取第一个不为空字符串的值,否则返回空字符串""static java.lang.StringexpectNotEmpty(java.lang.String v1, java.lang.String v2, java.lang.String v3)从指定的多个字符串依次检测并选取第一个不为空字符串的值,否则返回空字符串""static java.lang.StringexpectNotEmpty(java.lang.String v1, java.lang.String v2, java.lang.String v3, java.lang.String v4)从指定的多个字符串依次检测并选取第一个不为空字符串的值,否则返回空字符串""static <T> TexpectNotNull(T v1, T v2)从指定的多个值依次检测并选取第一个不为null的值static <T> TexpectNotNull(T v1, T v2, T v3)从指定的多个值依次检测并选取第一个不为null的值static <T> TexpectNotNull(T v1, T v2, T v3, T v4)从指定的多个值依次检测并选取第一个不为null的值static intgetCapacity(int capacity)根据需要存储的元素个数确定HashMap等Map接口实现类的初始容量(使用默认的负载因子:0.75)static intgetCapacity(int capacity, float loadFactor)根据需要存储的元素个数确定HashMap等Map接口实现类的初始容量static <T> TgetElse(T val, java.util.function.Supplier<T> other)当指定 val 为 null 时,则返回替补other中的返回值,否则返回 val 本身static org.slf4j.LoggergetLogger()获取调用此方法的当前类的日志处理器(Logger)
该 Logger 使用 slf4j APIstatic <T> TgetRecursively(T root, java.util.function.Function<T,T> recursion, java.util.function.Predicate<T> untilMatch)递归地调用对象的指定方法,直到返回的对象满足指定条件(如果root对象本身符合条件就返回其本身)static booleanisBlank(java.lang.Object obj)判断指定的对象是否为空
如果对象(或其 toString() 返回值)为null、空字符串、空格字符串,则返回true
注意:本方法会先去除字符串两边的空格,再判断static booleanisBlank(java.lang.String str)判断指定的字符串是否为null或去空格后为空字符串,如果是则返回truestatic booleanisEmpty(java.lang.Object obj)判断指定的对象是否为空
如果对象(或其 toString() 返回值)为 null、空字符串,则返回 true
注意:本方法不会去除字符串两边的空格,如果想去除字符串两边的空格后再进行判断,可以使用 isBlank() 方法static booleanisEmpty(java.lang.String str)判断指定的字符串是否为空
如果字符串为null、空字符串,则返回true
注意:本方法不会去除字符串两边的空格,如果想去除字符串两边的空格后再进行判断,可以使用isBlank()方法static <T,R>
booleanisMatch(T bean, java.util.function.Function<? super T,R> mapper, java.util.function.Predicate<? super R> matcher)检测指定的对象在经过指定的转换后,是否符合指定的条件static booleanisMutex(boolean a, boolean b)指示两个等价于 boolean 值的条件是否互斥(若一个为 true,则另一个必定为 false)static booleanisValid(byte[] array)判断指定byte数组是否有效。static booleanisValid(char[] array)判断指定char数组是否有效。static booleanisValid(double[] array)判断指定double数组是否有效。static booleanisValid(float[] array)判断指定float数组是否有效。static booleanisValid(int[] array)判断指定int数组是否有效。static booleanisValid(long[] array)判断指定long数组是否有效。static booleanisValid(java.lang.Boolean b)判断指定Boolean值是否有效。static booleanisValid(java.lang.CharSequence sequence)判断指定的字符串序列是否有效。static booleanisValid(java.lang.Number number)判断指定的数值对象是否有效。static booleanisValid(java.lang.Object arg)判断指定对象是否无效。static booleanisValid(java.lang.Object[] array)判断指定的对象数组是否有效。static booleanisValid(java.util.Collection<?> collection)判断指定的Collection对象是否有效。static booleanisValid(java.util.Map<?,?> map)判断指定的Map对象是否有效。static <T,R>
Rmap(T obj, java.util.function.Function<? super T,R> mapper)对指定的对象执行指定的mapper转换,安全地获得期望的转换结果static <T,R,E>
Emap(T obj, java.util.function.Function<? super T,R> mapper, java.util.function.Function<R,E> nestedMapper)对指定的对象执行mapper、nestedMapper双重转换,安全地获得期望的转换结果static <T,R>
RmapAny(java.util.function.Function<? super T,? extends R> mapper, java.util.function.Predicate<R> matcher, T... args)尝试将数组 args 中的元素依次应用到 mapper 中,并返回第一个符合matcher条件的返回值static <T,R>
RmapElse(T obj, java.util.function.Function<? super T,R> mapper, R other)对指定的对象执行执行的mapper转换,安全地获得期望的转换结果static <T,R>
RmapElseGet(T obj, java.util.function.Function<? super T,R> mapper, java.util.function.Supplier<R> other)对指定的对象执行执行的mapper转换,安全地获得期望的转换结果static <T> booleanmatchAll(java.util.function.Predicate<T> matcher, T... values)指示指定的参数是否都符合指定的matcher条件static booleanmatchAllOrNone(boolean a, boolean b)指示两个条件是否都成立,或者都不成立static booleanmatchAllOrNone(boolean a, boolean b, boolean c)指示3个等价于 boolean 值的条件要么都成立,要么都不成立static <T> booleanmatchAny(java.util.function.Predicate<T> matcher, T... values)指示指定的参数是否至少有一个符合指定的matcher条件static intsize(java.lang.CharSequence cs)返回字符序列的长度,如果参数为null,则返回 0static intsize(java.lang.Object[] array)返回数组的长度,如果参数为null,则返回 0static intsize(java.util.Collection<?> c)返回集合的长度,如果参数为null,则返回 0static intsize(java.util.Map<?,?> map)返回 Map 的长度,如果参数为null,则返回 0static intsizeOfArray(java.lang.Object array)返回数组的长度,如果参数为null,则返回 0static java.lang.Stringtrim4Html(java.lang.String str)去除字符串两端的空格
如果字符串为null、空字符串""、空白字符串,这返回HTML的空格符" "static <E> EtryUnwrap(java.lang.Object supplier)尝试拆箱可能由Supplier接口包装的实体对象static <T> voiduse(T obj, java.util.function.Consumer<? super T> consumer)使用obj执行指定的调用static <T> voiduse(T obj, java.util.function.Predicate<T> filter, java.util.function.Consumer<? super T> consumer)使用obj执行指定的调用static java.lang.RuntimeExceptionwrapException(java.lang.String msg, boolean forceUseMsg, java.lang.Throwable ex)将指定的异常信息封装为运行时异常static java.lang.RuntimeExceptionwrapException(java.lang.String msg, boolean forceUseMsg, java.lang.Throwable ex, java.lang.Throwable cause)将指定的异常信息封装为运行时异常static java.lang.RuntimeExceptionwrapException(java.lang.String msg, java.lang.Throwable ex)将指定的异常信息封装为运行时异常static java.lang.RuntimeExceptionwrapException(java.lang.String msg, java.lang.Throwable ex, java.lang.Throwable cause)将指定的异常信息封装为运行时异常
-
-
-
方法详细资料
-
getLogger
public static org.slf4j.Logger getLogger()
获取调用此方法的当前类的日志处理器(Logger)
该 Logger 使用 slf4j API
-
isEmpty
public static boolean isEmpty(java.lang.String str)
判断指定的字符串是否为空
如果字符串为null、空字符串,则返回true
注意:本方法不会去除字符串两边的空格,如果想去除字符串两边的空格后再进行判断,可以使用isBlank()方法
-
isEmpty
public static boolean isEmpty(java.lang.Object obj)
判断指定的对象是否为空
如果对象(或其 toString() 返回值)为 null、空字符串,则返回 true
注意:本方法不会去除字符串两边的空格,如果想去除字符串两边的空格后再进行判断,可以使用 isBlank() 方法- 参数:
obj- 指定的对象
-
isBlank
public static boolean isBlank(java.lang.String str)
判断指定的字符串是否为null或去空格后为空字符串,如果是则返回true- 参数:
str- 指定的字符串对象
-
isBlank
public static boolean isBlank(java.lang.Object obj)
判断指定的对象是否为空
如果对象(或其 toString() 返回值)为null、空字符串、空格字符串,则返回true
注意:本方法会先去除字符串两边的空格,再判断- 参数:
obj- 指定的对象- 另请参阅:
StringUtil.isBlank(Object)
-
expectNotNull
public static <T> T expectNotNull(T v1, T v2, T v3, T v4)从指定的多个值依次检测并选取第一个不为null的值
-
expectNotNull
public static <T> T expectNotNull(T v1, T v2, T v3)从指定的多个值依次检测并选取第一个不为null的值
-
expectNotNull
public static <T> T expectNotNull(T v1, T v2)从指定的多个值依次检测并选取第一个不为null的值
-
expectNotEmpty
public static java.lang.String expectNotEmpty(java.lang.String v1, java.lang.String v2, java.lang.String v3, java.lang.String v4)从指定的多个字符串依次检测并选取第一个不为空字符串的值,否则返回空字符串""
-
expectNotEmpty
public static java.lang.String expectNotEmpty(java.lang.String v1, java.lang.String v2, java.lang.String v3)从指定的多个字符串依次检测并选取第一个不为空字符串的值,否则返回空字符串""
-
expectNotEmpty
public static java.lang.String expectNotEmpty(java.lang.String v1, java.lang.String v2)从指定的多个字符串依次检测并选取第一个不为空字符串的值,否则返回空字符串""
-
isValid
public static boolean isValid(java.lang.Boolean b)
判断指定Boolean值是否有效。true即为有效。- 参数:
b- 指定的Boolean对象
-
isValid
public static boolean isValid(java.lang.Number number)
判断指定的数值对象是否有效。如果参数为null或 数值等于0,则为无效;其他均为有效。- 参数:
number- 指定的
-
isValid
public static boolean isValid(java.lang.CharSequence sequence)
判断指定的字符串序列是否有效。如果参数为null或空字符串"",则为无效;其他均为有效。- 参数:
sequence- 指定的字符串序列对象
-
isValid
public static boolean isValid(java.util.Map<?,?> map)
判断指定的Map对象是否有效。如果参数为null或map.size() == 0,则为无效,其他均为有效。- 参数:
map- 指定的映射集合对象
-
isValid
public static boolean isValid(java.util.Collection<?> collection)
判断指定的Collection对象是否有效。如果参数为null或collection.size() == 0,则为无效,其他均为有效。- 参数:
collection- 指定的集合对象
-
isValid
public static boolean isValid(byte[] array)
判断指定byte数组是否有效。如果参数为null或array.length == 0,则为无效,其他均为有效。- 参数:
array- 指定的byte数组
-
isValid
public static boolean isValid(int[] array)
判断指定int数组是否有效。如果参数为null或array.length == 0,则为无效,其他均为有效。- 参数:
array- 指定的int数组
-
isValid
public static boolean isValid(long[] array)
判断指定long数组是否有效。如果参数为null或array.length == 0,则为无效,其他均为有效。- 参数:
array- 指定的long数组
-
isValid
public static boolean isValid(char[] array)
判断指定char数组是否有效。如果参数为null或array.length == 0,则为无效,其他均为有效。- 参数:
array- 指定的char数组
-
isValid
public static boolean isValid(float[] array)
判断指定float数组是否有效。如果参数为null或array.length == 0,则为无效,其他均为有效。- 参数:
array- 指定的float数组
-
isValid
public static boolean isValid(double[] array)
判断指定double数组是否有效。如果参数为null或array.length == 0,则为无效,其他均为有效。- 参数:
array- 指定的double数组
-
isValid
public static boolean isValid(java.lang.Object[] array)
判断指定的对象数组是否有效。如果参数为null或array.length == 0,则为无效,其他均为有效。- 参数:
array- 指定的对象数组
-
isValid
public static boolean isValid(java.lang.Object arg)
判断指定对象是否无效。只有以下情况视为无效,其他均为有效。
无效的参数对象arg的定义如下(按照判断顺序排序):
1.arg == null
2.如果arg是字符序列对象,去空格后,arg.length() == 0
3.如果arg是数值对象,去空格后,值 == 0
4.如果arg是映射集合(Map)对象,arg.size() == 0
5.如果arg是集合(Collection)对象,arg.size() == 0
6.如果arg是数组(Array)对象,arg.length == 0
7.如果arg是布尔(Boolean)对象,arg 等价于 false- 返回:
- 上述无效的情况返回
false,其他情况均返回true
-
decode
public static <T> T decode(java.lang.Object input, java.lang.Object... expressions)将指定的值根据指定的表达式解析,并返回解析后的结果- 参数:
input- 指定的值expressions- 指定的表达式,例如:("1", "男", "0", "女")方法将会将指定属性的值(value),与表达式进行匹配,形如:if(value 等于 "1"){ return "男"; }else if(value 等于 "0"){ return "女"; }else{ return value; }本方法接收的表达式参数个数可以为奇数,例如:
(6, "星期六", 7, "星期天", "工作日"),相当于:if(value 等于 6){ return "星期六"; }else if(value 等于 7){ return "星期天"; }else{ return "工作日"; }
-
trim4Html
public static java.lang.String trim4Html(java.lang.String str)
去除字符串两端的空格
如果字符串为null、空字符串""、空白字符串,这返回HTML的空格符" "
-
getCapacity
public static int getCapacity(int capacity)
根据需要存储的元素个数确定HashMap等Map接口实现类的初始容量(使用默认的负载因子:0.75)- 参数:
capacity- 需要存储的元素个数
-
getCapacity
public static int getCapacity(int capacity, float loadFactor)根据需要存储的元素个数确定HashMap等Map接口实现类的初始容量- 参数:
capacity- 需要存储的元素个数loadFactor- 负载因子,必须介于0-1之间,如果不在此范围,内部也不检测,后果自负
-
castType
public static <T> T castType(java.lang.Object obj)
将指定泛型对象进行泛型擦除,并转换为对应的泛型声明
-
use
public static <T> void use(@Nullable T obj, java.util.function.Consumer<? super T> consumer)使用obj执行指定的调用- 参数:
obj- 指定的对象,可以为 nullconsumer- 指定的调用,如果obj为 null,则不执行该调用
-
use
public static <T> void use(@Nullable T obj, java.util.function.Predicate<T> filter, java.util.function.Consumer<? super T> consumer)使用obj执行指定的调用- 参数:
obj- 指定的对象,可以为 nullfilter- 过滤器,只有 {code obj} 满足该条件,才会执行consumerconsumer- 指定的调用,如果obj为 null,则不执行该调用
-
map
public static <T,R> R map(@Nullable T obj, java.util.function.Function<? super T,R> mapper)对指定的对象执行指定的mapper转换,安全地获得期望的转换结果- 参数:
obj- 指定的对象,可以为 nullmapper- 转换器- 返回:
- 如果
obj == null则返回null,否则返回转换后的结果 - 从以下版本开始:
- 2.3.0
-
map
public static <T,R,E> E map(@Nullable T obj, java.util.function.Function<? super T,R> mapper, java.util.function.Function<R,E> nestedMapper)对指定的对象执行mapper、nestedMapper双重转换,安全地获得期望的转换结果- 参数:
obj- 指定的对象,可以为 nullmapper- 转换器nestedMapper- 嵌套的二次转换器- 返回:
- 如果
obj == null则返回 null,否则返回转换后的结果 - 从以下版本开始:
- 2.6
-
mapElse
public static <T,R> R mapElse(@Nullable T obj, java.util.function.Function<? super T,R> mapper, R other)对指定的对象执行执行的mapper转换,安全地获得期望的转换结果- 参数:
obj- 指定的对象,可以为 nullmapper- 转换器other- 如果转换后的值为null,则返回该参数值- 返回:
- 如果
obj == null则返回null,否则返回转换后的结果 - 从以下版本开始:
- 2.6
-
mapElseGet
public static <T,R> R mapElseGet(@Nullable T obj, java.util.function.Function<? super T,R> mapper, java.util.function.Supplier<R> other)对指定的对象执行执行的mapper转换,安全地获得期望的转换结果- 参数:
obj- 指定的对象,可以为 nullmapper- 转换器other- 如果转换后的值为null,则返回该备用对象的返回值- 返回:
- 如果
obj == null则返回null,否则返回转换后的结果 - 从以下版本开始:
- 2.6
-
tryUnwrap
public static <E> E tryUnwrap(@Nullable java.lang.Object supplier)尝试拆箱可能由Supplier接口包装的实体对象- 返回:
- 如果指定参数实现了
Supplier接口,则调用 get() 方法 并返回其值;否则直接返回 该对象本身 - 从以下版本开始:
- 2.3.0
-
getElse
public static <T> T getElse(@Nullable T val, java.util.function.Supplier<T> other)当指定 val 为 null 时,则返回替补other中的返回值,否则返回 val 本身- 从以下版本开始:
- 2.6
-
isMatch
public static <T,R> boolean isMatch(@Nullable T bean, java.util.function.Function<? super T,R> mapper, java.util.function.Predicate<? super R> matcher)检测指定的对象在经过指定的转换后,是否符合指定的条件- 参数:
bean- 指定的对象mapper- 转换器matcher- 条件判断器- 从以下版本开始:
- 2.3.0
-
wrapException
public static java.lang.RuntimeException wrapException(@Nullable java.lang.String msg, boolean forceUseMsg, @Nullable java.lang.Throwable ex, @Nullable java.lang.Throwable cause)将指定的异常信息封装为运行时异常- 参数:
forceUseMsg- 如果指定的异常是运行时异常,且msg不为null;此时是否还需要包装一个IllegalArgumentException来确保强制使用传入的msg作为异常信息- 返回:
- 如果异常
ex为 null,或者不是运行时异常,则自动将其封装为IllegalArgumentException;否则返回对应的运行时异常 - 从以下版本开始:
- 2.3.0
-
wrapException
public static java.lang.RuntimeException wrapException(@Nullable java.lang.String msg, @Nullable java.lang.Throwable ex, @Nullable java.lang.Throwable cause)将指定的异常信息封装为运行时异常注意:如果指定的异常是运行时异常;此时不会使用传入的
msg- 返回:
- 如果异常
ex为 null,或者不是运行时异常,则自动将其封装为IllegalArgumentException;否则返回对应的运行时异常 - 从以下版本开始:
- 2.3.0
-
wrapException
public static java.lang.RuntimeException wrapException(@Nullable java.lang.String msg, boolean forceUseMsg, @Nullable java.lang.Throwable ex)将指定的异常信息封装为运行时异常- 参数:
forceUseMsg- 如果指定的异常是运行时异常,且msg不为null;此时是否还需要包装一个IllegalArgumentException来确保强制使用传入的msg作为异常信息- 返回:
- 如果异常
ex为 null,或者不是运行时异常,则自动将其封装为IllegalArgumentException;否则返回对应的运行时异常 - 从以下版本开始:
- 2.3.0
-
wrapException
public static java.lang.RuntimeException wrapException(@Nullable java.lang.String msg, @Nullable java.lang.Throwable ex)将指定的异常信息封装为运行时异常- 返回:
- 如果异常
ex为 null,或者不是运行时异常,则自动将其封装为IllegalArgumentException;否则返回对应的运行时异常 - 从以下版本开始:
- 2.3.0
-
getRecursively
public static <T> T getRecursively(T root, java.util.function.Function<T,T> recursion, java.util.function.Predicate<T> untilMatch)递归地调用对象的指定方法,直到返回的对象满足指定条件(如果root对象本身符合条件就返回其本身)- 从以下版本开始:
- 2.8
-
eqLax
public static <T> int eqLax(@Nullable T inputVal, @Nullable T currentVal)宽松地比较两个实体的指定属性值是否相等,并返回比较结果- 返回:
- 相等 -> 1;如果有一方为 null -> 0;否则返回 -1
- 从以下版本开始:
- 2.8
-
eqLax
public static <T,R> int eqLax(@Nullable T input, @Nullable T current, java.util.function.Function<T,R> getter)宽松地比较两个实体的指定属性值是否相等- 返回:
- 相等 -> 1;如果有一方为 null -> 0;否则返回 -1
- 从以下版本开始:
- 2.8
-
expectEquals
public static <T,R> R expectEquals(@Nullable T input, @Nullable T current, java.util.function.Function<T,R> getter, java.util.function.BiConsumer<T,R> setIfNull, @Nullable java.lang.Object error) throws java.lang.IllegalArgumentException期望两个实体的指定属性值是相等的,并返回该值。 本方法允许其中一个属性值为 null,并会自动使用另一方的值进行填补。如果两者都不为 null 且不相等,则直接抛出非法参数异常- 返回:
- 返回非空的属性值。如果两个属性值相等,优先返回
current的属性值 - 抛出:
java.lang.IllegalArgumentException- 从以下版本开始:
- 2.8
-
expectEquals
public static <T,R> R expectEquals(@Nullable T input, @Nullable T current, java.util.function.Function<T,R> getter, java.util.function.BiConsumer<T,R> setIfNull) throws java.lang.IllegalArgumentException期望两个实体的指定属性值是相等的,并返回该值。 本方法允许其中一个属性值为 null,并会自动使用另一方的值进行填补。如果两者都不为 null 且不相等,则直接抛出非法参数异常- 返回:
- 返回非空的属性值。如果两个属性值相等,优先返回
current的属性值 - 抛出:
java.lang.IllegalArgumentException- 从以下版本开始:
- 2.8
-
expectEqualsBasedOld
public static <T,R> R expectEqualsBasedOld(@Nullable T input, @Nullable T old, java.util.function.Function<T,R> getter, java.util.function.Consumer<R> setOldIfInputNull, @Nullable java.lang.Object error) throws java.lang.IllegalArgumentException期望两个实体的指定属性值是相等的,并返回该值。 如果两者不相等且input为 null,则会自动使用old进行赋值操作。如果两者都不为 null 且不相等,则直接抛出非法参数异常- 返回:
- 返回
old的属性值 - 抛出:
java.lang.IllegalArgumentException- 从以下版本开始:
- 2.8
-
expectEqualsBasedOld
public static <T,R> R expectEqualsBasedOld(@Nullable T input, @Nullable T old, java.util.function.Function<T,R> getter, java.util.function.Consumer<R> setOldIfInputNul) throws java.lang.IllegalArgumentException期望两个实体的指定属性值是相等的,并返回该值。 如果两者不相等且input为 null,则会自动使用old进行赋值操作。如果两者都不为 null 且不相等,则直接抛出非法参数异常- 返回:
- 返回
old的属性值 - 抛出:
java.lang.IllegalArgumentException- 从以下版本开始:
- 2.8
-
size
public static int size(java.util.Collection<?> c)
返回集合的长度,如果参数为null,则返回 0- 从以下版本开始:
- 2.8
-
size
public static int size(java.util.Map<?,?> map)
返回 Map 的长度,如果参数为null,则返回 0- 从以下版本开始:
- 2.8
-
size
public static int size(java.lang.Object[] array)
返回数组的长度,如果参数为null,则返回 0- 从以下版本开始:
- 2.8
-
sizeOfArray
public static int sizeOfArray(java.lang.Object array) throws java.lang.IllegalArgumentException返回数组的长度,如果参数为null,则返回 0- 抛出:
java.lang.IllegalArgumentException- 如果array不是数组(可以为null)- 从以下版本开始:
- 2.8
-
size
public static int size(java.lang.CharSequence cs)
返回字符序列的长度,如果参数为null,则返回 0- 从以下版本开始:
- 2.8
-
matchAllOrNone
public static boolean matchAllOrNone(boolean a, boolean b)指示两个条件是否都成立,或者都不成立- 返回:
a && b || !a && !b
-
matchAllOrNone
public static boolean matchAllOrNone(boolean a, boolean b, boolean c)指示3个等价于 boolean 值的条件要么都成立,要么都不成立
-
isMutex
public static boolean isMutex(boolean a, boolean b)指示两个等价于 boolean 值的条件是否互斥(若一个为 true,则另一个必定为 false)
-
matchAny
public static <T> boolean matchAny(java.util.function.Predicate<T> matcher, T... values)指示指定的参数是否至少有一个符合指定的matcher条件
-
matchAll
public static <T> boolean matchAll(java.util.function.Predicate<T> matcher, T... values)指示指定的参数是否都符合指定的matcher条件
-
emptyToNull
public static <T> T[] emptyToNull(T[] array)
尝试将空数组转为 null
-
emptyToNull
public static <T extends java.util.Collection<?>> T emptyToNull(T c)
尝试将空集合转为 null
-
emptyToNull
public static <T extends java.util.Map<?,?>> T emptyToNull(T map)
尝试将空 Map 集合转为 null
-
mapAny
public static <T,R> R mapAny(java.util.function.Function<? super T,? extends R> mapper, java.util.function.Predicate<R> matcher, T... args)尝试将数组 args 中的元素依次应用到 mapper 中,并返回第一个符合matcher条件的返回值
-
-