Freigeben über


Lambda-Ausdrücke: Das fun-Schlüsselwort (F#)

Mit dem fun-Schlüsselwort wird ein Lambda-Ausdruck, d. h. eine anonyme Funktion, definiert.

fun parameter-list -> expression

Hinweise

parameter-list besteht in der Regel Namen und optional aus Typen von Parametern.Im Allgemeinen, kann parameter-list aus beliebigen F#-Mustern bestehen.Eine vollständige Liste der möglichen Muster finden Sie unter Mustervergleich (F#).Listen gültiger Parameter enthalten die folgenden Beispiele.

// Lambda expressions with parameter lists.
fun a b c -> ...
fun (a: int) b c -> ...
fun (a : int) (b : string) (c:float) -> ...

// A lambda expression with a tuple pattern.
fun (a, b) -> …

// A lambda expression with a list pattern.
fun head :: tail -> …

Die expression ist der Rumpf der Funktion, deren letzter Ausdruck einen Rückgabewert generiert.Beispiele für gültige Lambda-Ausdrücke:

fun x -> x + 1
fun a b c -> printfn "%A %A %A" a b c
fun (a: int) (b: int) (c: int) -> a + b * c
fun x y -> let swap (a, b) = (b, a) in swap (x, y)

Verwenden von Lambda-Ausdrücken

Lambda-Ausdrücke sind besonders hilfreich, wenn Operationen für eine Liste oder eine andere Auflistung ausgeführt werden sollen und Sie den Aufwand zum Definieren einer Funktion vermeiden möchten.Viele F#-Bibliotheksfunktionen akzeptieren Funktionswerte als Argumente, und die Verwendung eines Lambda-Ausdrucks kann in diesen Fällen besonders zweckdienlich sein.Im folgenden Code wird ein Lambda-Ausdruck auf Elemente einer Liste angewendet.In diesem Fall fügt die anonyme Funktion jedem Element einer Liste 1 hinzu.

let list = List.map (fun i -> i + 1) [1;2;3]
printfn "%A" list

Siehe auch

Referenz

Funktionen (F#)