Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Maîtriser les expressions lambda Java 8 : Guide de la programmation fonctionnelle

Les expressions lambda (Java 8) sont la fonctionnalité phare. Elles permettent la programmation fonctionnelle et simplifient grandement le développement.

Syntaxe

paramètres -> corps_expression

Caractéristiques

Exemples variés

// Avec types déclarés
MathOperation addition = (int a, int b) -> a + b;

// Sans types (inférence)
MathOperation subtraction = (a, b) -> a - b;

// Avec bloc et return explicite
MathOperation multiplication = (int a, int b) -> { return a * b; };

// Expression unique sans accolades ni return
MathOperation division = (int a, int b) -> a / b;

// Sans parenthèses (un paramètre)
GreetingService greet1 = message -> System.out.println("Hello " + message);

// Avec parenthèses
GreetingService greet2 = (message) -> System.out.println("Hello " + message);

Interfaces fonctionnelles utilisées

interface MathOperation { int operation(int a, int b); }
interface GreetingService { void sayMessage(String message); }

Exécution

System.out.println("10 + 5 = " + operate(10, 5, addition));   // 15
System.out.println("10 - 5 = " + operate(10, 5, subtraction)); // 5
System.out.println("10 x 5 = " + operate(10, 5, multiplication)); // 50
System.out.println("10 / 5 = " + operate(10, 5, division));   // 2
greet1.sayMessage("Mahesh");  // Hello Mahesh
greet2.sayMessage("Suresh");  // Hello Suresh

Portée des variables (capture)

Une lambda peut accéder aux variables final ou effectively final (assignées une seule fois) de la portée englobante. Réassigner → erreur de compilation.

Exemple

final static String salutation = "Hello! ";
GreetingService gs = message -> System.out.println(salutation + message);
gs.sayMessage("Mahesh"); // Hello! Mahesh

Les lambdas éliminent le besoin de classes anonymes verbeuses pour les interfaces fonctionnelles (une seule méthode abstraite).

Java

  1. Maîtriser les opérateurs Java : Types, syntaxe et exemples pratiques
  2. Comprendre les expressions, instructions et blocs en Java
  3. Commentaires Java : Types, utilisation et bonnes pratiques
  4. Maîtriser la boucle for améliorée en Java : Syntaxe, exemples et bonnes pratiques
  5. Maîtriser les chaînes de caractères en Java : Création, méthodes et bonnes pratiques
  6. Maîtriser les interfaces Java : concepts, implémentation et bonnes pratiques
  7. Maîtriser le try-with-resources Java : gestion automatique des ressources expliquée
  8. Annotations Java expliquées : types, placement et exemples pratiques
  9. Assertions Java : guide pratique pour détecter les bugs et assurer la fiabilité du code