Java: Lambda Expressions - wat is het?
Een interface implementeren met slechts één abstracte methode is meestal relatief verwarrend. Lambda-uitdrukkingen bieden een remedie. Hoe u ze kunt gebruiken.
Java: Lambda-uitdrukkingen
Overweeg bijvoorbeeld de volgende functionele interface: » interfacetest {void test method (String x); } «.
- In plaats van de abstracte methode op de klassieke manier te implementeren, kunt u ook tijd besparen en lambda-expressies gebruiken.
- Hiertoe implementeert u eerst de interface, voert u vervolgens de parameters van de abstracte methode in en tenslotte de daadwerkelijke declaratie van de methode: » Test test = (String x) -> System.out.println (x); ". Hiervoor is de operator » -> « nieuw geïntroduceerd.
- Als de methode geen parameters heeft, laat u de haakjes gewoon leeg. Verschillende parameters worden normaal gescheiden door komma's.
- Als de functie meerdere opdrachten moet uitvoeren, begrenst u de hoofdtekst van de Lamda-functie met accolades: » Test test = (String x) -> {if (x.length ()> 0) {System.out.println (x) ; } else {System.out.println ("no character"); }}; ".
- Lambda-uitdrukkingen zijn bijzonder praktisch voor iteraties met behulp van ArrayLists. Als " list " een ArrayList is, kunt u bijvoorbeeld " liste.forEach ((x) -> System.out.println (x)) gebruiken; «Alle elementen van de lijst uitvoeren.
- U kunt Lambda Expressions ook gebruiken om de retourwaarde van de abstracte methode in te stellen. Laten we eens kijken naar de interface » interface compute {int compute (int a, int b); } «. Met het commando » add arithmetic = (int a, int b) -> a + b; Een methode voor het optellen van twee getallen is bijvoorbeeld geïmplementeerd.