Interface Function<T,R>

Type Parameters:
T - The type of the function input.
R - The type of the function output.
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@ConsumerType @FunctionalInterface public interface Function<T,R>
A function that accepts a single argument and produces a result.

This is a functional interface and can be used as the assignment target for a lambda expression or method reference.

"ThreadSafe"
  • Method Summary

    Modifier and Type
    Method
    Description
    default <S> Function<T,S>
    andThen(Function<? super R,? extends S> after)
    Compose the specified Function to be called on the value returned by this Function.
    apply(T t)
    Applies this function to the specified argument.
    static <T, R> Function<T,R>
    asFunction(Function<T,R> wrapped)
    Returns a Function which wraps the specified java.util.function.Function.
    static <T, R> Function<T,R>
    asJavaFunction(Function<T,R> wrapped)
    Returns a java.util.function.Function which wraps the specified Function and throws any thrown exceptions.
    static <T, R> Function<T,R>
    asJavaFunctionOrElse(Function<T,R> wrapped, R orElse)
    Returns a java.util.function.Function which wraps the specified Function and the specified value.
    static <T, R> Function<T,R>
    asJavaFunctionOrElseGet(Function<T,R> wrapped, Supplier<? extends R> orElseGet)
    Returns a java.util.function.Function which wraps the specified Function and the specified java.util.function.Supplier.
    default <S> Function<S,R>
    compose(Function<? super S,? extends T> before)
    Compose the specified Function to be called to supply a value to be consumed by this Function.
  • Method Details

    • apply

      R apply(T t) throws Exception
      Applies this function to the specified argument.
      Parameters:
      t - The input to this function.
      Returns:
      The output of this function.
      Throws:
      Exception - An exception thrown by the method.
    • andThen

      default <S> Function<T,S> andThen(Function<? super R,? extends S> after)
      Compose the specified Function to be called on the value returned by this Function.
      Type Parameters:
      S - The type of the value supplied by the specified Function.
      Parameters:
      after - The Function to be called on the value returned by this Function. Must not be null.
      Returns:
      A Function composed of this Function and the specified Function.
    • compose

      default <S> Function<S,R> compose(Function<? super S,? extends T> before)
      Compose the specified Function to be called to supply a value to be consumed by this Function.
      Type Parameters:
      S - The type of the value consumed the specified Function.
      Parameters:
      before - The Function to be called to supply a value to be consumed by this Function. Must not be null.
      Returns:
      A Function composed of this Function and the specified Function.
    • asJavaFunction

      static <T, R> Function<T,R> asJavaFunction(Function<T,R> wrapped)
      Returns a java.util.function.Function which wraps the specified Function and throws any thrown exceptions.

      The returned java.util.function.Function will throw any exception thrown by the wrapped Function.

      Type Parameters:
      T - The type of the function input.
      R - The type of the function output.
      Parameters:
      wrapped - The Function to wrap. Must not be null.
      Returns:
      A java.util.function.Function which wraps the specified Function.
    • asJavaFunctionOrElse

      static <T, R> Function<T,R> asJavaFunctionOrElse(Function<T,R> wrapped, R orElse)
      Returns a java.util.function.Function which wraps the specified Function and the specified value.

      If the the specified Function throws an Exception, the the specified value is returned.

      Type Parameters:
      T - The type of the function input.
      R - The type of the function output.
      Parameters:
      wrapped - The Function to wrap. Must not be null.
      orElse - The value to return if the specified Function throws an Exception.
      Returns:
      A java.util.function.Function which wraps the specified Function and the specified value.
    • asJavaFunctionOrElseGet

      static <T, R> Function<T,R> asJavaFunctionOrElseGet(Function<T,R> wrapped, Supplier<? extends R> orElseGet)
      Returns a java.util.function.Function which wraps the specified Function and the specified java.util.function.Supplier.

      If the the specified Function throws an Exception, the value returned by the specified java.util.function.Supplier is returned.

      Type Parameters:
      T - The type of the function input.
      R - The type of the function output.
      Parameters:
      wrapped - The Function to wrap. Must not be null.
      orElseGet - The java.util.function.Supplier to call for a return value if the specified Function throws an Exception.
      Returns:
      A java.util.function.Function which wraps the specified Function and the specified java.util.function.Supplier.
    • asFunction

      static <T, R> Function<T,R> asFunction(Function<T,R> wrapped)
      Returns a Function which wraps the specified java.util.function.Function.
      Type Parameters:
      T - The type of the function input.
      R - The type of the function output.
      Parameters:
      wrapped - The java.util.function.Function to wrap. Must not be null.
      Returns:
      A Function which wraps the specified java.util.function.Function.