Artículo

Lambdas en JAVA 8

Una expresión lambda es un bloque corto de código que toma parámetros y devuelve un valor. Las expresiones lambda son similares a los métodos, pero no necesitan un nombre y se pueden implementar directamente en el cuerpo de un método. Para entender este articulo te recomiendo que primero mires que es una interfaz funcional. Vídeo […]

Lambdas en JAVA 8

Modifica este markdown para añadir el tipo de lenguaje de código y envolver el código en ```:

Una expresión lambda es un bloque corto de código que toma parámetros y devuelve un valor. Las expresiones lambda son similares a los métodos, pero no necesitan un nombre y se pueden implementar directamente en el cuerpo de un método.

Para entender este articulo te recomiendo que primero mires que es una interfaz funcional.

Vídeo explicativo

Sintaxis

La expresión lambda más simple contiene un solo parámetro y una expresión:

parámetro -> expresión

Para usar más de un parámetro, envuélvalos entre paréntesis:

(parámetro1, parámetro2) -> expresión

Las expresiones son limitadas. Deben devolver inmediatamente un valor y no pueden contener variables, asignaciones o declaraciones como si o para. Para realizar operaciones más complejas, se puede usar un bloque de código con llaves. Si la expresión lambda necesita devolver un valor, entonces el bloque de código debe tener una declaración de devolución.

(parámetro1, parámetro2) -> {bloque de código}

Usando expresiones Lambda

La expresiones lambda fueron creadas para simplificar las clases anónimas de un único método, por ello podemos ver la mayor diferencia comparándolas.

Supongamos que tenemos la siguiente interfaz funcional:

@FunctionalInterface
interface Ejecutor {
    void ejecutar();
}

La forma de implementar la interfaz en una unica expresión, antes de JAVA 8 era usando clases anónimas y el resultado sería:

new Ejecutor(){
    @Override
    public void ejecutar(){}
}

Esto genera bastante código y hace difícil de leer lo que realmente queremos implementar

Con JAVA 8 y usando Lambdas, podemos usar directamente

() -> {}

¿Quieres acelerar tu carrera como desarrollador Java?

Reserva una Sesión de Estrategia Técnica gratuita y descubre cómo pasar de Junior a Senior en menos tiempo del que imaginas.

  • Diagnóstico personalizado de tu nivel técnico
  • Plan de acción para conseguir tu próximo ascenso
  • Mentoría 1-a-1 enfocada en resultados

⚡ Plazas disponibles limitadas

Compartir artículo