Interface DoubleUnaryOperator

All Superinterfaces:
DoubleFunction<Double>, DoubleFunction<Double>, DoubleUnaryOperator, Function<Double,​Double>, Function<Double,​Double>, ToDoubleFunction<Double>, ToDoubleFunction<Double>, UnaryOperator<Double>, UnaryOperator<Double>
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 DoubleUnaryOperator
extends DoubleFunction<Double>, UnaryOperator<Double>, ToDoubleFunction<Double>, DoubleUnaryOperator
Represents an operation on a single double-valued operand that produces a double-valued result. This is the primitive type specialization of UnaryOperator for double.

This is a functional interface whose functional method is applyAsDouble(double).

Since:
1.8
See Also:
UnaryOperator
  • Field Details

  • Method Details

    • applyAsDouble

      double applyAsDouble​(double value)
      Applies this function to the given argument.
      Specified by:
      applyAsDouble in interface DoubleUnaryOperator
      Parameters:
      value - the function argument
      Returns:
      the function result
    • applyAsDouble

      default double applyAsDouble​(Double value)
      Applies this function to the given argument.
      Specified by:
      applyAsDouble in interface ToDoubleFunction<Double>
      Specified by:
      applyAsDouble in interface ToDoubleFunction<Double>
      Parameters:
      value - the function argument
      Returns:
      the function result
    • apply

      default Double apply​(double value)
      Applies this function to the given argument.
      Specified by:
      apply in interface DoubleFunction<Double>
      Specified by:
      apply in interface DoubleFunction<Double>
      Parameters:
      value - the function argument
      Returns:
      the function result
    • apply

      default Double apply​(Double value)
      Applies this function to the given argument.
      Specified by:
      apply in interface DoubleFunction<Double>
      Specified by:
      apply in interface Function<Double,​Double>
      Specified by:
      apply in interface Function<Double,​Double>
      Specified by:
      apply in interface ToDoubleFunction<Double>
      Parameters:
      value - the function argument
      Returns:
      the function result
    • applyPartial

      default DoubleSupplier applyPartial​(double t)
      Partially apply a parameter such that a single param function becomes a no-param supplier.
      Specified by:
      applyPartial in interface DoubleFunction<Double>
      Parameters:
      t - The parameter to apply.
      Returns:
      A partially-applied function.
    • consume

      default DoubleConsumer consume​(DoubleConsumer consumer)
      Consume a function.
      Specified by:
      consume in interface ToDoubleFunction<Double>
      Parameters:
      consumer - The consumer to use in consuming.
      Returns:
      A Consumer which passes it's argument to this function and then passes the result into the given consumer.
    • mapToObj

      default <S> DoubleFunction<S> mapToObj​(DoubleFunction<? extends S> functor)
      Lift a function.
      Specified by:
      mapToObj in interface ToDoubleFunction<Double>
      Type Parameters:
      S - The return type.
      Parameters:
      functor - The function to use in lifting.
      Returns:
      A function that passes the result of fn through a functor to produce a lifted function.
    • mapToPredicate

      default DoublePredicate mapToPredicate​(DoublePredicate functor)
      Lift a function.
      Specified by:
      mapToPredicate in interface ToDoubleFunction<Double>
      Parameters:
      functor - The function to use in lifting.
      Returns:
      A function that passes the result of fn through a functor to produce a lifted function.
    • mapToInt

      default DoubleToIntFunction mapToInt​(DoubleToIntFunction functor)
      Lift a function.
      Specified by:
      mapToInt in interface ToDoubleFunction<Double>
      Parameters:
      functor - The function to use in lifting.
      Returns:
      A function that passes the result of fn through a functor to produce a lifted function.
    • mapToLong

      default DoubleToLongFunction mapToLong​(DoubleToLongFunction functor)
      Lift a function.
      Specified by:
      mapToLong in interface ToDoubleFunction<Double>
      Parameters:
      functor - The function to use in lifting.
      Returns:
      A function that passes the result of fn through a functor to produce a lifted function.
    • map

      default DoubleUnaryOperator map​(UnaryOperator<Double> functor)
      Lift a function.
      Specified by:
      map in interface UnaryOperator<Double>
      Parameters:
      functor - The function to use in lifting.
      Returns:
      A function that passes the result of fn through a functor to produce a lifted function.
    • recurse

      default double recurse​(double value, DoublePredicate terminalCondition)
      A method that tells a function to call itself with its own result. This actually imitates recursion using iteration. Don't tell anyone.
      Parameters:
      value - The initial value to apply to the function.
      terminalCondition - The condition upon which the "recursion" will terminate.
      Returns:
      The result of the recursive call.
    • recurse

      default double recurse​(double value, DoublePredicate terminalCondition, int maxDepth)
      A method that tells a function to call itself with its own result. This actually imitates recursion using iteration. Don't tell anyone.
      Parameters:
      value - The initial value to apply to the function.
      terminalCondition - The condition upon which the "recursion" will terminate.
      maxDepth - The maximum number of times to recurse. A depth of zero or less will simply return the passed-in value (the function will never be called).
      Returns:
      The result of the recursive call.
    • recurse

      default double recurse​(double value, int depth)
      A method that tells a function to call itself with its own result. This actually imitates recursion using iteration. Don't tell anyone.
      Parameters:
      value - The initial value to apply to the function.
      depth - The number of times to recurse. A depth of zero or less will simply return the passed-in value (the function will never be called).
      Returns:
      The result of the recursive call.
    • recursive

      default DoubleUnaryOperator recursive​(DoublePredicate terminalCondition)
      A method that creates a function which calls a function with its own result until some condition is met.
      Parameters:
      terminalCondition - The condition upon which the recursion will terminate.
      Returns:
      A function that will call the given function on its own result a number of times as specified by the depth parameter.
    • recursive

      default DoubleUnaryOperator recursive​(DoublePredicate terminalCondition, int maxDepth)
      A method that creates a function which calls a function with its own result some amount of times or until some condition is met.
      Parameters:
      terminalCondition - The condition upon which the recursion will terminate.
      maxDepth - The maximum number of times to recurse. A depth of zero or less will simply return the passed-in value (the function will never be called).
      Returns:
      A function that will call the given function on its own result a number of times as specified by the depth parameter.
    • recursive

      default DoubleUnaryOperator recursive​(int depth)
      A method that creates a function which calls a function with its own result some amount of times.
      Specified by:
      recursive in interface UnaryOperator<Double>
      Parameters:
      depth - The number of times to recurse. A depth of zero or less will simply return the value passed to apply(t) (the inner function will never be called).
      Returns:
      A function that will call the given function on its own result a number of times as specified by the depth parameter.
    • identity

      static DoubleUnaryOperator identity()
      Returns a unary operator that always returns its input argument.
      Returns:
      a unary operator that always returns its input argument