0% encontró este documento útil (0 votos)
7 vistas4 páginas

Expresiones Lambda en Java

El documento explica las expresiones lambda en Java. Las expresiones lambda son funciones anónimas que pueden usarse donde se espera una interfaz funcional. Una interfaz funcional tiene un solo método abstracto. Las expresiones lambda pueden clasificarse como consumidores, proveedores, funciones, operadores unarios, operadores binarios o predicados dependiendo de si aceptan parámetros, devuelven valores o ambos. También se pueden usar referencias a métodos como expresiones lambda.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
7 vistas4 páginas

Expresiones Lambda en Java

El documento explica las expresiones lambda en Java. Las expresiones lambda son funciones anónimas que pueden usarse donde se espera una interfaz funcional. Una interfaz funcional tiene un solo método abstracto. Las expresiones lambda pueden clasificarse como consumidores, proveedores, funciones, operadores unarios, operadores binarios o predicados dependiendo de si aceptan parámetros, devuelven valores o ambos. También se pueden usar referencias a métodos como expresiones lambda.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

GARBAGE COLLECTOR

NELSON ANDRES OSORIO CASTILLO

CODIGO: 461216149

UNIVERSIDAD DE CUNDINAMARCA

PROGRAMACION 2

GRUPO 301
Las expresiones lambda son funciones anónimas, es decir, funciones que no necesitan una clase.
su sintáxis básica se detalla a continuación:

El operador lambda (->) separa la declaración de parámetros de la declaración del cuerpo de la


función.

PARÁMETROS:

Cuando se tiene un solo parámetro no es necesario utilizar los paréntesis.


Cuando no se tienen parámetros, o cuando se tienen dos o más, es necesario utilizar paréntesis.

CUERPO DE LAMBDA:

Cuando el cuerpo de la expresión lambda tiene una única línea no es necesario utilizar las llaves y
no necesitan especificar la cláusula return en el caso de que deban devolver valores.

Cuando el cuerpo de la expresión lambda tiene más de una línea se hace necesario utilizar las
llaves y es necesario incluir la cláusula return en el caso de que la función deba devolver un valor.

Algunos ejemplos de expresiones lambda pueden ser:

z -> z + 2
() -> [Link](” Mensaje 1 “)
(int longitud, int altura) -> {return altura * longitud;}
(String x) -> {String retorno = x;
retorno = [Link](” ***”);
return retorno;}

Como hemos visto las expresiones lambda son funciones anónimas y pueden ser utilizadas allá
donde el tipo aceptado sea una interfaz funcional, pero. ¿qué es una interfaz funcional?

Una interfaz funcional es una interfaz con uno y solo un método abstracto. La declaración es
exactamente igual que las interfaces normales con dos características adicionales:

Tiene un único método abstracto, como ya hemos dicho.


El motivo de que la interfaz tenga un único método abstracto es que será la expresión lambda la
que proveerá de la implementación para dicho método.
Tipos

Las expresiones lambda puede clasificarse de la siguiente manera:

Consumidores.
Proveedores.
Funciones.
Operadores Unarios.
Operadores Binarios.
Predicados.

CONSUMIDORES
Se trata de aquellas expresiones lambda que aceptan un solo valor y no devuelven valor alguno.
Las expresiones BiConsumidoras, un caso especial de las expresiones consumidoras, son aquellas
que toman dos valores como parámetro y no devuelven resultado.
PROVEEDORES
En este caso se trata de expresiones que no tienen parámetros, pero devuelven un resultado.
FUNCIONES
Aquellas expresiones que aceptan un argumento y devuelven un valor como resultado y cuyos
tipos no tienen por qué ser iguales.
Las BiFunciones son aquellas expresiones de tipo función que aceptan dos argumentos y
devuelven un resultado.

OPERADORES UNARIOS
Caso especial de funciones en las que tanto el parámetro como el valor devuelto son del mismo
tipo.
OPERADORES BINARIOS
Igual que en el caso de los Operadores Unarios, se trata de un caso especial de funciones en las
que los dos argumentos y el resultado son del mismo tipo.
PREDICADOS
Se trata de expresiones que aceptan un parámetro y devuelven un valor lógico.
Como en los casos anteriores, se pueden tener BiPredicados, predicados que, en lugar de tener un
parámetro, tienen dos.

REFERENCIAS A MÉTODOS
Las referencias a los métodos nos permiten reutilizar un método como expresión lambda. Para
hacer uso de las referencias a métodos basta con utilizar la siguiente
sintáxis: referenciaObjetivo::nombreDelMetodo.

Con las referencias a los métodos se ofrece una anotación más rápida para expresiones lambda
simples y existen 3 tipos diferentes:
Métodos estáticos.
Métodos de instancia de un tipo.
Métodos de instancia de un objeto existente.
USO
Como hemos visto con anterioridad, las lambdas pueden ser utilizadas allá donde el tipo de
parámetros aceptados sea una interfaz funcional.
Este es el caso de muchas de las funcionalidades que ofrece [Link], nuevo Api que
aparece con Java 8, que permite la programación funcional sobre un flujo de valores sin
estructura.

También podría gustarte