mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-04-19 03:01:48 +08:00
add methods
This commit is contained in:
parent
e7ace4ae57
commit
af85d8beaf
@ -24,11 +24,24 @@ import java.util.function.Predicate;
|
|||||||
*/
|
*/
|
||||||
public class PredicateUtil {
|
public class PredicateUtil {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 强制转换 {@code Predicate<? super T>} 为 {@code Predicate<T>}.
|
||||||
|
*
|
||||||
|
* @param <T> 参数类型
|
||||||
|
* @param predicate {@link Predicate}
|
||||||
|
* @return 强转后的{@link Predicate}
|
||||||
|
* @since 6.0.0
|
||||||
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
static <T> Predicate<T> coerce(final Predicate<? super T> predicate) {
|
||||||
|
return (Predicate<T>) predicate;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 反向条件
|
* 反向条件
|
||||||
*
|
*
|
||||||
* @param predicate 条件
|
* @param predicate 条件
|
||||||
* @param <T> 参数类型
|
* @param <T> 参数类型
|
||||||
* @return 反向条件 {@link Predicate}
|
* @return 反向条件 {@link Predicate}
|
||||||
*/
|
*/
|
||||||
public static <T> Predicate<T> negate(final Predicate<T> predicate) {
|
public static <T> Predicate<T> negate(final Predicate<T> predicate) {
|
||||||
|
@ -221,7 +221,7 @@ public class ObjUtil {
|
|||||||
* <li>{@code null}:默认返回{@code true};</li>
|
* <li>{@code null}:默认返回{@code true};</li>
|
||||||
* <li>数组:等同于{@link ArrayUtil#isEmpty(Object)};</li>
|
* <li>数组:等同于{@link ArrayUtil#isEmpty(Object)};</li>
|
||||||
* <li>{@link CharSequence}:等同于{@link CharSequenceUtil#isEmpty(CharSequence)};</li>
|
* <li>{@link CharSequence}:等同于{@link CharSequenceUtil#isEmpty(CharSequence)};</li>
|
||||||
* <li>{@link Collection}:等同于{@link CollUtil#isEmpty(Collection)};</li>
|
* <li>{@link Collection}:等同于{@link CollUtil#isEmpty(Collection)};</li>
|
||||||
* <li>{@link Map}:等同于{@link MapUtil#isEmpty(Map)};</li>
|
* <li>{@link Map}:等同于{@link MapUtil#isEmpty(Map)};</li>
|
||||||
* <li>
|
* <li>
|
||||||
* {@link Iterator}或{@link Iterable}:等同于{@link IterUtil#isEmpty(Iterator)}、
|
* {@link Iterator}或{@link Iterable}:等同于{@link IterUtil#isEmpty(Iterator)}、
|
||||||
@ -329,6 +329,19 @@ public class ObjUtil {
|
|||||||
return defaultSupplier.get();
|
return defaultSupplier.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 如果指定的对象不为 {@code null},则应用提供的映射函数并返回结果,否则返回 {@code null}。
|
||||||
|
*
|
||||||
|
* @param source 要检查的对象
|
||||||
|
* @param handler 要应用的映射函数
|
||||||
|
* @param <T> 输入对象的类型
|
||||||
|
* @param <R> 映射函数的返回类型
|
||||||
|
* @return 映射函数的结果, 如果输入对象为 null,则返回 null
|
||||||
|
*/
|
||||||
|
public static <T, R> R apply(final T source, final Function<T, R> handler) {
|
||||||
|
return defaultIfNull(source, handler, null);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 如果给定对象不为{@code null} 返回自定义handler处理后的结果,否则返回默认值
|
* 如果给定对象不为{@code null} 返回自定义handler处理后的结果,否则返回默认值
|
||||||
*
|
*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user