T
- the type of the input to the functionR
- the type of the result of the function@FunctionalInterface public interface Function<T,R>
This is a functional interface
whose functional method is apply(Object)
.
Modifier and Type | Method and Description |
---|---|
default <V> Function<T,V> |
andThen(Function<? super R,? extends V> after)
Returns a composed function that first applies this function to
its input, and then applies the
after function to the result. |
R |
apply(T t)
Applies this function to the given argument.
|
default <V> Function<V,R> |
compose(Function<? super V,? extends T> before)
Returns a composed function that first applies the
before
function to its input, and then applies this function to the result. |
static <T> Function<T,T> |
identity()
Returns a function that always returns its input argument.
|
R apply(T t)
t
- the function argumentdefault <V> Function<V,R> compose(Function<? super V,? extends T> before)
before
function to its input, and then applies this function to the result.
If evaluation of either function throws an exception, it is relayed to
the caller of the composed function.V
- the type of input to the before
function, and to the
composed functionbefore
- the function to apply before this function is appliedbefore
function and then applies this functionNullPointerException
- if before is nullandThen(Function)
default <V> Function<T,V> andThen(Function<? super R,? extends V> after)
after
function to the result.
If evaluation of either function throws an exception, it is relayed to
the caller of the composed function.V
- the type of output of the after
function, and of the
composed functionafter
- the function to apply after this function is appliedafter
functionNullPointerException
- if after is nullcompose(Function)
static <T> Function<T,T> identity()
T
- the type of the input and output objects to the function Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2019, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.