Interface TriFunction<T,U,V,R>

Type Parameters:
T - the type of the first argument
U - the type of the second argument
V - the type of the third argument
R - the type of the result
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 TriFunction<T,U,V,R>
Represents a function that accepts three arguments and produces a result.

This is a functional interface extending the concept of Function and BiFunction to support three input parameters. It is useful when you need to pass multiple related values to a single computation.

Example usage:


 // Define a function that calculates volume
 TriFunction<Integer, Integer, Integer, Integer> volume =
     (length, width, height) -> length * width * height;

 // Apply the function
 int result = volume.apply(10, 5, 3);  // Returns 150

 // Chain with another function
 TriFunction<Integer, Integer, Integer, String> formatted =
     volume.andThen(v -> "Volume: " + v + " cubic units");
 
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    default <K> TriFunction<T,U,V,K>
    andThen(Function<? super R,? extends K> after)
    Returns a composed function that first applies this function to its input, and then applies the after function to the result.
    apply(T t, U u, V v)
    Applies this function to the given arguments.
  • Method Details

    • apply

      R apply(T t, U u, V v)
      Applies this function to the given arguments.
      Parameters:
      t - the first function argument
      u - the second function argument
      v - the third function argument
      Returns:
      the function result
    • andThen

      default <K> TriFunction<T,U,V,K> andThen(Function<? super R,? extends K> after)
      Returns a composed function that first applies this function to its input, and then applies the after function to the result.

      If evaluation of either function throws an exception, it is relayed to the caller of the composed function.

      Type Parameters:
      K - the type of output of the after function, and of the composed function
      Parameters:
      after - the function to apply after this function is applied
      Returns:
      a composed function that first applies this function and then applies the after function
      Throws:
      NullPointerException - if after is null