- Autor

- Nombre
- Nelson Silva
- Social
Introducción
Las expresiones lambda, introducidas en Java 8, revolucionaron la forma en que escribimos y comprendemos el código en Java, haciéndolo más conciso, legible y expresivo.
¿Qué es Lambda?
Lambda es un concepto que permite representar una instancia de una interfaz funcional de una manera más corta y simplificada. Básicamente, es una forma de escribir funciones anónimas: funciones sin nombre.
Ventajas de Lambda
- Concisión: El código se vuelve más compacto y limpio.
- Legibilidad: Facilita la lectura y comprensión del código.
- Flexibilidad: Puede usarse junto con las nuevas características de Java 8, como los Streams.
Ejemplo de Uso
package com.caffeinealgorithm.programaremjava;
import java.util.ArrayList;
import java.util.List;
public class Lambda {
private List<String> personas = new ArrayList<>();
public void Run() {
personas.add("Nelson Silva");
personas.add("Larissa Fernandes");
personas.add("Pedro Henrique");
personas.add("Raquel Soares");
// listarPersonas();
personas.forEach((persona) -> System.out.printf("Nombre: %s\n", persona));
}
private void listarPersonas() {
for (String persona : personas)
System.out.printf("Nombre: %s\n", persona);
}
}
/*
Nombre: Nelson Silva
Nombre: Larissa Fernandes
Nombre: Pedro Henrique
Nombre: Raquel Soares
*/
¿Cómo Funciona?
En el ejemplo presentado anteriormente, vemos el uso de lambda para recorrer una lista e imprimir cada elemento. Aquí, el método forEach acepta una expresión lambda, que define qué hacer con cada elemento de la lista.
Más Ejemplos
- Ordenar una lista:
List<Integer> numeros = Arrays.asList(5, 2, 8, 3, 1);
numeros.sort((n1, n2) -> n1.compareTo(n2));
System.out.println(numeros);
- Crear un hilo:
new Thread(() -> System.out.println("Hilo siendo ejecutado usando Lambda!")).start();
- Operaciones con Streams:
long cantidad = personas.stream()
.filter(persona -> persona.startsWith("N"))
.count();
System.out.println("Cantidad de personas cuyo nombre comienza con la letra N: " + cantidad);
Conclusión
Las expresiones lambda son una adición poderosa al lenguaje Java, que permite a los desarrolladores escribir código de manera más eficiente y expresiva. Además, los lambdas son cruciales para aprovechar al máximo las nuevas características de Java, especialmente las introducidas en Java 8, como los Streams.