Lambda výraz

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 7. dubna 2018; kontroly vyžadují 6 úprav .

Lambda výraz v programování je speciální syntaxe pro definování funkčních objektů , vypůjčená z λ-kalkulu . Obecně se používá k deklaraci anonymních funkcí tam, kde jsou použity, a obvykle umožňuje uzavření lexikálního kontextu , ve kterém je výraz použit. Pomocí výrazů lambda můžete deklarovat funkce kdekoli v kódu.

Lambda výrazy jsou podporovány v mnoha programovacích jazycích ( Common Lisp , Ruby , Perl , Python , PHP , JavaScript (od ES 2015), C# , F# , Visual Basic .NET , C++ , Java , Scala , Kotlin, Object Pascal ( Delphi) , Haxe, Dart [1] a další).

Lambda výrazy v .NET

Lambda výrazy mají dvě podoby. Formulář, který nejpříměji nahrazuje anonymní metodu, je blok kódu uzavřený ve složených závorkách. Jedná se o přímou náhradu za anonymní metody . Na druhé straně výrazy lambda poskytují ještě zkrácenější způsob, jak deklarovat anonymní metodu a nevyžadují ani kód ve složených závorkách, ani příkaz return. Oba typy výrazů lambda lze převést na delegáty .

Všechny výrazy lambda používají operátor lambda =>, který se čte jako "goes to" (Java, F# a PascalABC.NET používají operátor ->). Levá strana příkazu lambda definuje vstupní parametry (pokud existují) a pravá strana obsahuje výraz nebo blok příkazu. Výraz lambda x => x * 5se čte jako „funkce x, která jde do x krát 5“ [2] .

Poznámky

  1. Prohlídka jazyka Dart . dart.dev Staženo 16. ledna 2020. Archivováno z originálu dne 14. ledna 2020.
  2. Lambda Expressions (C# Programming Guide) . Získáno 29. prosince 2009. Archivováno z originálu 29. května 2014.

Literatura

Odkazy