wow
Expresiones Lambda en Java
Paula Andrea Betancourt Matamoros
go!
Interfaces funcionales
Una interfaz funcional es una interfaz que tiene exactamente un único método abstracto. Este método define el comportamiento que será implementado por una expresión lambda o una referencia a método. En Java, las interfaces funcionales son fundamentales para habilitar el uso de lambdas.
+ EXTRA
La anotación @FunctionalInterface se puede usar (aunque es opcional) para indicar explícitamente que una interfaz es funcional.
No es estrictamente necesaria, pero es una buena práctica usarla para evitar errores
+ EJEMPLO
Tipos de metodos en las interfaces
Abstractos
Las interfaces son una especie de “contrato” que define el comportamiento de las clases que las implementen. Este contrato contiene “cláusulas obligatorias” y “cláusulas opcionales “.
Obligan a implementar
Default
Implementación Opcional que se hereda
Static
Llamados desde la interfaz
Privados
Helpers (metodos de ayuda) internos para la interfaz
Interfaces
Interfaces funcionales
Interfaces
Funcionan de manera similar a una clase padre
Clases anónimas con interfaces
Una clase anónima es una clase sin nombre que se crea en el momento en que se necesita una implementación rápida de una interfaz. Cuando implementamos una interfaz, normalmente una clase debe “cumplir el contrato” implementando todos sus métodos. Pero si solo se va a usar una vez, podemos evitar crear una clase completa y usar una clase anónima. En ese caso:
- La interfaz se instancia directamente.
- Dentro de las llaves {} se define el comportamiento de sus métodos.
- No tiene nombre, por eso no se puede volver a instanciar.
Clases anónimas con interfaces
Se declara e instancia al mismo tiempo, y solo se puede usar una vez (no se puede volver a crear otra instancia igual).
🚀
NACE
Clases anónimas en Java
Se instancia
¿Como crear objetos temporales para usar en el momento?
ACTUA RAPIDO
Se ejecuta una sola vez
+ info
MUERE
💥
No se puede volver a llamar
¿Cuando usarlas?
Se usan cuando necesitas probar una idea o comportamiento sin crear una clase nueva.
Se usan cuando necesitas algo que funcione una sola vez y no vale la pena crear una clase completa.
Ayudan a crear algo temporal que haga una tarea concreta y luego no se vuelva a usar..
Cuando vas a sobrescribir un método una sola vez.
¿Que es una expresión lambda en java?
Una expresión lambda es una forma breve de escribir una acción o comportamiento en Java sin crear una clase o método completo. Permite expresar de manera directa lo que el programa debe hacer, haciendo el código más simple y fácil de leer. Están pensadas para trabajar con interfaces funcionales.
""Se usan principalmente cuando se necesita definir comportamientos de forma rápida y sencilla, sin crear clases anónimas o clases adicionales"
Sintaxis de una expresion lambda
(parametros) -> expresion
Sintaxis de una expresion lambda
(parametros) -> {
// bloque de codigo
}
Sintaxis de una expresion lambda
(parámetro1, parámetro2) -> expresión
Sintaxis de una expresion lambda
((parámetro1, parámetro2) -> {//bloque de código}
Interfaces Predefinidas
Java permite usar lambdas siempre que se trate de una interfaz funcional, es decir, una interfaz que tiene un único método abstracto. Muchas interfaces funcionales predefinidas se encuentran en el paquete java.util.function.
Algunas de las interfaces funcionales más comunes son:
- Predicate<T>: Recibe un argumento y devuelve un booleano (test)
- Function<T, R>: Recibe un argumento de tipo T y devuelve un resultado de tipo R (apply)
- Consumer<T>: Recibe un argumento de tipo T y no devuelve nada (accept)
Predicate
Un Predicate es una interfaz funcional que toma un valor (cualquier dato) y devuelve true o false.
Ejemplo 1
Ejemplo 2
Function
Function es una interfaz funcional que toma un argumento de tipo T y devuelve un resultado de tipo R.
Ejemplo 1
Ejemplo 2
Customer
Consumer es una interfaz funcional que toma un argumento de tipo T y no devuelve ningún resultado
Ejemplo 1
Ejemplo 2
Cuando la expresión lambda es muy larga o contiene lógica complicada, puede volverse difícil de leer y entender, perdiendo la claridad que se busca al usarla.
Las expresiones lambda permiten escribir menos código al eliminar clases anónimas innecesarias y simplificar la sintaxis. Esto hace que el código sea más conciso y fácil de leer, especialmente cuando se trabaja con interfaces funcionales.
+ info
¿En que parte del mvp debe ir?
MODELO
Las lambdas pueden usarse en cualquier capa del patrón MVP: en la vista para manejar acciones, en el modelo para trabajar con datos y en el presentador para procesar información. No pertenecen a una capa fija, sino que se usan donde simplifiquen el código.
PRESENTADOR
VISTA
¿Preguntas?
Una empresa necesita un sistema para filtrar empleados según distintos criterios: Edad mayor de 30 años Salario mayor de 2.000.000 Cargo igual a "Ingeniero" Antes se usaban clases anónimas, pero el código era largo y difícil de mantener. Ahora se propone usar expresiones lambda para definir los filtros de forma más clara y flexible dentro del modelo MVP.
Abstractos
Estos metodos obligan a que cada clase que implementen la interfaz esten obligados a usar este metodo.
¿Que son las clases anonimas en Java?
Es una clase sin nombre que se crea y usa al instante.
Se utiliza cuando necesitas modificar o extender una clase solo una vez.
No se puede reutilizar ni llamar más adelante.
Se declara e instancia en una sola línea.
Default
Métodos que describen un método que se puede o no usar. (No es obligatorio)
Static
Solo se pueden llamar desde la propia interfaz
Privados
Sirven para compartir código entre otros métodos default o static dentro de la misma interfaz, tambien son denominados metodos helpers.
Expresiones Lambda en Java
Paula Betancourt
Created on October 7, 2025
Start designing with a free template
Discover more than 1500 professional designs like these:
View
Smart Presentation
View
Practical Presentation
View
Essential Presentation
View
Akihabara Presentation
View
Pastel Color Presentation
View
Visual Presentation
View
Relaxing Presentation
Explore all templates
Transcript
wow
Expresiones Lambda en Java
Paula Andrea Betancourt Matamoros
go!
Interfaces funcionales
Una interfaz funcional es una interfaz que tiene exactamente un único método abstracto. Este método define el comportamiento que será implementado por una expresión lambda o una referencia a método. En Java, las interfaces funcionales son fundamentales para habilitar el uso de lambdas.
+ EXTRA
La anotación @FunctionalInterface se puede usar (aunque es opcional) para indicar explícitamente que una interfaz es funcional.
No es estrictamente necesaria, pero es una buena práctica usarla para evitar errores
+ EJEMPLO
Tipos de metodos en las interfaces
Abstractos
Las interfaces son una especie de “contrato” que define el comportamiento de las clases que las implementen. Este contrato contiene “cláusulas obligatorias” y “cláusulas opcionales “.
Obligan a implementar
Default
Implementación Opcional que se hereda
Static
Llamados desde la interfaz
Privados
Helpers (metodos de ayuda) internos para la interfaz
Interfaces
Interfaces funcionales
Interfaces
Funcionan de manera similar a una clase padre
Clases anónimas con interfaces
Una clase anónima es una clase sin nombre que se crea en el momento en que se necesita una implementación rápida de una interfaz. Cuando implementamos una interfaz, normalmente una clase debe “cumplir el contrato” implementando todos sus métodos. Pero si solo se va a usar una vez, podemos evitar crear una clase completa y usar una clase anónima. En ese caso:
Clases anónimas con interfaces
Se declara e instancia al mismo tiempo, y solo se puede usar una vez (no se puede volver a crear otra instancia igual).
🚀
NACE
Clases anónimas en Java
Se instancia
¿Como crear objetos temporales para usar en el momento?
ACTUA RAPIDO
Se ejecuta una sola vez
+ info
MUERE
💥
No se puede volver a llamar
¿Cuando usarlas?
Se usan cuando necesitas probar una idea o comportamiento sin crear una clase nueva.
Se usan cuando necesitas algo que funcione una sola vez y no vale la pena crear una clase completa.
Ayudan a crear algo temporal que haga una tarea concreta y luego no se vuelva a usar..
Cuando vas a sobrescribir un método una sola vez.
¿Que es una expresión lambda en java?
Una expresión lambda es una forma breve de escribir una acción o comportamiento en Java sin crear una clase o método completo. Permite expresar de manera directa lo que el programa debe hacer, haciendo el código más simple y fácil de leer. Están pensadas para trabajar con interfaces funcionales.
""Se usan principalmente cuando se necesita definir comportamientos de forma rápida y sencilla, sin crear clases anónimas o clases adicionales"
Sintaxis de una expresion lambda
(parametros) -> expresion
Sintaxis de una expresion lambda
(parametros) -> { // bloque de codigo }
Sintaxis de una expresion lambda
(parámetro1, parámetro2) -> expresión
Sintaxis de una expresion lambda
((parámetro1, parámetro2) -> {//bloque de código}
Interfaces Predefinidas
Java permite usar lambdas siempre que se trate de una interfaz funcional, es decir, una interfaz que tiene un único método abstracto. Muchas interfaces funcionales predefinidas se encuentran en el paquete java.util.function. Algunas de las interfaces funcionales más comunes son:
Predicate
Un Predicate es una interfaz funcional que toma un valor (cualquier dato) y devuelve true o false.
Ejemplo 1
Ejemplo 2
Function
Function es una interfaz funcional que toma un argumento de tipo T y devuelve un resultado de tipo R.
Ejemplo 1
Ejemplo 2
Customer
Consumer es una interfaz funcional que toma un argumento de tipo T y no devuelve ningún resultado
Ejemplo 1
Ejemplo 2
Cuando la expresión lambda es muy larga o contiene lógica complicada, puede volverse difícil de leer y entender, perdiendo la claridad que se busca al usarla.
Las expresiones lambda permiten escribir menos código al eliminar clases anónimas innecesarias y simplificar la sintaxis. Esto hace que el código sea más conciso y fácil de leer, especialmente cuando se trabaja con interfaces funcionales.
+ info
¿En que parte del mvp debe ir?
MODELO
Las lambdas pueden usarse en cualquier capa del patrón MVP: en la vista para manejar acciones, en el modelo para trabajar con datos y en el presentador para procesar información. No pertenecen a una capa fija, sino que se usan donde simplifiquen el código.
PRESENTADOR
VISTA
¿Preguntas?
Una empresa necesita un sistema para filtrar empleados según distintos criterios: Edad mayor de 30 años Salario mayor de 2.000.000 Cargo igual a "Ingeniero" Antes se usaban clases anónimas, pero el código era largo y difícil de mantener. Ahora se propone usar expresiones lambda para definir los filtros de forma más clara y flexible dentro del modelo MVP.
Abstractos
Estos metodos obligan a que cada clase que implementen la interfaz esten obligados a usar este metodo.
¿Que son las clases anonimas en Java?
Es una clase sin nombre que se crea y usa al instante.
Se utiliza cuando necesitas modificar o extender una clase solo una vez.
No se puede reutilizar ni llamar más adelante.
Se declara e instancia en una sola línea.
Default
Métodos que describen un método que se puede o no usar. (No es obligatorio)
Static
Solo se pueden llamar desde la propia interfaz
Privados
Sirven para compartir código entre otros métodos default o static dentro de la misma interfaz, tambien son denominados metodos helpers.