Relacionado con: Function, IntFunction, DoubleFunction, LongFunction, ToDoubleFunction, ToIntFunction, ToLongFunction, DoubleToIntFunction, DoubleToLongFunction, IntToDoubleFunction, IntToLongFunction, LongToDoubleFunction, LongToIntFunction
La interfaz funcional Function, viene definida en la version de Java 8, y esta pensada para implementar funciones que recibe un objeto cualquiera, y devuelven también un objeto cualquiera.
Ambos objetos pueden ser de la misma clase o de clases distinta. Si necesitamos trabajar con primitivos, utilizaremos alguna de las otras interfaces relacionadas
El método a implementar es
R apply(T t)
La interfaz Function
Si necesito determinar la mitad de un valor Integer, podría crear la siguiente función
En la linea 11 implemento la interfaz, indicando que voy a entregar un Integer, y retornare un Double, y luego la aplico en cada ocasión en que me interese
El método compose()
El método compose(), recibe una función que será ejecutada en primer lugar, y luego aplicara la función creada anteriormente
En la linea 11, estoy creando un nuevo campo Function , en la 14 le añado otra función como «compose()». Al utilizar compose, primero se ejecutará esta función, y, sobre el resultado, se ejecuta la definida en primer lugar(la de la linea 11)
El método anThen()
El método andThen(), recibe una función que será ejecutada a continuación de la creada anteriormente
En este caso, en la linea 17, se ejecuta primero la función definida primero (linea 11), y sobre el resultado, se ejecuta la función andThen()(definida en linea 14)
Método identity()
Este método devuelve una función que entrega el mismo valor que se facilita
Relacionado
Descubre más desde Recursos para formacion
Suscríbete y recibe las últimas entradas en tu correo electrónico.