Middle
Qu'est-ce que les expressions lambda en Java?
sobes.tech IA
Réponse de l'IA
L’expression lambda en Java est une fonction anonyme. Elle permet de considérer la fonctionnalité comme un argument de méthode ou comme du code en tant que données.
Caractéristiques principales :
- Anonymat : N’a pas de nom.
- Interface fonctionnelle : L’expression lambda est toujours liée à une interface fonctionnelle (interface avec une seule méthode abstraite).
- Syntaxe :
(paramètres) -> { corps }
Exemple d’utilisation avec l’interface fonctionnelle Consumer :
import java.util.function.Consumer;
// L’interface fonctionnelle Consumer<T> possède une méthode abstraite accept(T t)
Consumer<String> salutation = (nom) -> {
System.out.println("Bonjour, " + nom);
};
salutation.accept("Monde"); // Affiche : Bonjour, Monde
Exemple d’utilisation avec l’interface Runnable :
// L’interface Runnable possède une méthode abstraite run()
Runnable tâche = () -> {
System.out.println("La tâche s’exécute dans un thread séparé");
};
new Thread(tâche).start(); // Démarre la tâche dans un nouveau thread
Variantes syntaxiques :
- Sans paramètres :
() -> { System.out.println("Bonjour"); } - Un paramètre sans parenthèses :
nom -> System.out.println("Bonjour, " + nom) - Plusieurs paramètres avec parenthèses et types :
(int a, int b) -> { return a + b; } - Plusieurs paramètres sans types (inférence de type) :
(a, b) -> a + b - Corps en une seule ligne sans
return:(a, b) -> a + b - Corps multi-lignes avec accolades et
return(si nécessaire) :(a, b) -> { int somme = a + b; return somme; }
Les expressions lambda rendent le code plus compact, lisible et permettent d’utiliser la programmation fonctionnelle en Java.