Module bus.core

Interface PredicateX<T>

Type Parameters:
T - 参数类型
All Superinterfaces:
Predicate<T>, Serializable
All Known Implementing Classes:
BoundedRange
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface PredicateX<T> extends Predicate<T>, Serializable
可序列化的Predicate接口,支持异常抛出和逻辑组合操作。
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    default PredicateX<T>
    and(PredicateX<? super T> other)
    返回一个组合谓词,表示此谓词与另一个谓词的短路逻辑与。
    static <T> PredicateX<T>
    isEqual(Object... targetRef)
    返回一个谓词,判断输入参数是否与目标对象相等。
    static <T> PredicateX<T>
    multiAnd(PredicateX<T>... predicates)
    组合多个PredicateX实例,执行短路逻辑与操作。
    static <T> PredicateX<T>
    multiOr(PredicateX<T>... predicates)
    组合多个PredicateX实例,执行短路逻辑或操作。
    default PredicateX<T>
    返回一个表示此谓词逻辑非的谓词。
    default PredicateX<T>
    or(PredicateX<? super T> other)
    返回一个组合谓词,表示此谓词与另一个谓词的短路逻辑或。
    default boolean
    test(T t)
    对给定参数评估此谓词,自动处理异常。
    boolean
    对给定参数评估此谓词,可能抛出异常。

    Methods inherited from interface java.util.function.Predicate

    and, or
  • Method Details

    • multiAnd

      @SafeVarargs static <T> PredicateX<T> multiAnd(PredicateX<T>... predicates)
      组合多个PredicateX实例,执行短路逻辑与操作。
      Type Parameters:
      T - 参数类型
      Parameters:
      predicates - 要组合的PredicateX实例
      Returns:
      组合后的PredicateX实例
    • multiOr

      @SafeVarargs static <T> PredicateX<T> multiOr(PredicateX<T>... predicates)
      组合多个PredicateX实例,执行短路逻辑或操作。
      Type Parameters:
      T - 参数类型
      Parameters:
      predicates - 要组合的PredicateX实例
      Returns:
      组合后的PredicateX实例
    • isEqual

      static <T> PredicateX<T> isEqual(Object... targetRef)
      返回一个谓词,判断输入参数是否与目标对象相等。
      Type Parameters:
      T - 参数类型
      Parameters:
      targetRef - 用于比较的目标对象引用,可能为null
      Returns:
      PredicateX,判断输入参数是否与目标对象相等
    • testing

      boolean testing(T t) throws Throwable
      对给定参数评估此谓词,可能抛出异常。
      Parameters:
      t - 输入参数
      Returns:
      如果参数匹配谓词返回true,否则返回false
      Throws:
      Throwable - 可能抛出的异常
    • test

      default boolean test(T t)
      对给定参数评估此谓词,自动处理异常。
      Specified by:
      test in interface Predicate<T>
      Parameters:
      t - 输入参数
      Returns:
      如果参数匹配谓词返回true,否则返回false
      Throws:
      RuntimeException - 包装后的运行时异常
    • and

      default PredicateX<T> and(PredicateX<? super T> other)
      返回一个组合谓词,表示此谓词与另一个谓词的短路逻辑与。如果此谓词为false,则不评估另一个谓词。
      Parameters:
      other - 与此谓词进行逻辑与的谓词
      Returns:
      组合谓词,表示此谓词与other谓词的短路逻辑与
      Throws:
      NullPointerException - 如果other为null
    • negate

      default PredicateX<T> negate()
      返回一个表示此谓词逻辑非的谓词。
      Specified by:
      negate in interface Predicate<T>
      Returns:
      表示此谓词逻辑非的谓词
    • or

      default PredicateX<T> or(PredicateX<? super T> other)
      返回一个组合谓词,表示此谓词与另一个谓词的短路逻辑或。如果此谓词为true,则不评估另一个谓词。
      Parameters:
      other - 与此谓词进行逻辑或的谓词
      Returns:
      组合谓词,表示此谓词与other谓词的短路逻辑或
      Throws:
      NullPointerException - 如果other为null