# DoubleUnaryOperator

public interface **DoubleUnaryOperator** Represents an operation on a single `double`-valued operand that produces
a `double`-valued result. This is the primitive type specialization of
`https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/UnaryOperator.html` for `double`.

This is a [functional interface](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/package-summary)
whose functional method is `https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html#applyAsDouble(double)`.

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/UnaryOperator.html`

### Public Method Summary

|---|---|
| [DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html) | [andThen](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html#andThen(java.util.function.DoubleUnaryOperator))([DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html) after) Returns a composed operator that first applies this operator to its input, and then applies the `after` operator to the result. |
| abstract double | [applyAsDouble](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html#applyAsDouble(double))(double operand) Applies this operator to the given operand. |
| [DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html) | [compose](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html#compose(java.util.function.DoubleUnaryOperator))([DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html) before) Returns a composed operator that first applies the `before` operator to its input, and then applies this operator to the result. |
| static [DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html) | [identity](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html#identity())() Returns a unary operator that always returns its input argument. |

## Public Methods

#### public [DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html)
**andThen**
([DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html) after)

Returns a composed operator that first applies this operator to
its input, and then applies the `after` operator to the result.
If evaluation of either operator throws an exception, it is relayed to
the caller of the composed operator.

##### Parameters

| after | the operator to apply after this operator is applied |
|---|---|

##### Returns

- a composed operator that first applies this operator and then applies the `after` operator

##### Throws

| [NullPointerException](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/NullPointerException.html) | if after is null |
|---|---|

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html#compose(java.util.function.DoubleUnaryOperator)`

#### public abstract double
**applyAsDouble**
(double operand)

Applies this operator to the given operand.

##### Parameters

| operand | the operand |
|---|---|

##### Returns

- the operator result

#### public [DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html)
**compose**
([DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html) before)

Returns a composed operator that first applies the `before`
operator to its input, and then applies this operator to the result.
If evaluation of either operator throws an exception, it is relayed to
the caller of the composed operator.

##### Parameters

| before | the operator to apply before this operator is applied |
|---|---|

##### Returns

- a composed operator that first applies the `before` operator and then applies this operator

##### Throws

| [NullPointerException](https://developers.google.com/j2objc/javadoc/jre/reference/java/lang/NullPointerException.html) | if before is null |
|---|---|

##### See Also

- `https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html#andThen(java.util.function.DoubleUnaryOperator)`

#### public static [DoubleUnaryOperator](https://developers.google.com/j2objc/javadoc/jre/reference/java/util/function/DoubleUnaryOperator.html)
**identity**
()

Returns a unary operator that always returns its input argument.

##### Returns

- a unary operator that always returns its input argument