Module bus.core

Interface BinaryOperatorX<T>

Type Parameters:
T - 参数和返回值类型
All Superinterfaces:
BiFunction<T,T,T>, BinaryOperator<T>, Serializable
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 BinaryOperatorX<T> extends BinaryOperator<T>, Serializable
可序列化的BinaryOperator接口,支持异常抛出和基于比较器的最大最小值操作。
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    default T
    apply(T t, T u)
    对给定的两个参数应用此操作,自动处理异常。
    applying(T t, T u)
    对给定的两个参数应用此操作,可能抛出异常。
    static <T> BinaryOperatorX<T>
    返回一个BinaryOperatorX,始终返回第二个参数。
    static <T> BinaryOperatorX<T>
    返回一个BinaryOperatorX,始终返回第一个参数。
    static <T> BinaryOperatorX<T>
    maxBy(Comparator<? super T> comparator)
    返回一个BinaryOperatorX,根据指定的比较器返回两个元素中较大的那个。
    static <T> BinaryOperatorX<T>
    minBy(Comparator<? super T> comparator)
    返回一个BinaryOperatorX,根据指定的比较器返回两个元素中较小的那个。

    Methods inherited from interface java.util.function.BiFunction

    andThen
  • Method Details

    • minBy

      static <T> BinaryOperatorX<T> minBy(Comparator<? super T> comparator)
      返回一个BinaryOperatorX,根据指定的比较器返回两个元素中较小的那个。
      Type Parameters:
      T - 输入参数类型
      Parameters:
      comparator - 用于比较两个值的比较器
      Returns:
      BinaryOperatorX,返回较小的元素
      Throws:
      NullPointerException - 如果比较器为null
    • maxBy

      static <T> BinaryOperatorX<T> maxBy(Comparator<? super T> comparator)
      返回一个BinaryOperatorX,根据指定的比较器返回两个元素中较大的那个。
      Type Parameters:
      T - 输入参数类型
      Parameters:
      comparator - 用于比较两个值的比较器
      Returns:
      BinaryOperatorX,返回较大的元素
      Throws:
      NullPointerException - 如果比较器为null
    • justBefore

      static <T> BinaryOperatorX<T> justBefore()
      返回一个BinaryOperatorX,始终返回第一个参数。
      Type Parameters:
      T - 参数类型
      Returns:
      BinaryOperatorX,返回第一个参数
    • justAfter

      static <T> BinaryOperatorX<T> justAfter()
      返回一个BinaryOperatorX,始终返回第二个参数。
      Type Parameters:
      T - 参数类型
      Returns:
      BinaryOperatorX,返回第二个参数
    • applying

      T applying(T t, T u) throws Throwable
      对给定的两个参数应用此操作,可能抛出异常。
      Parameters:
      t - 第一个函数参数
      u - 第二个函数参数
      Returns:
      操作结果
      Throws:
      Throwable - 可能抛出的异常
    • apply

      default T apply(T t, T u)
      对给定的两个参数应用此操作,自动处理异常。
      Specified by:
      apply in interface BiFunction<T,T,T>
      Parameters:
      t - 第一个函数参数
      u - 第二个函数参数
      Returns:
      操作结果
      Throws:
      RuntimeException - 包装后的运行时异常