Lambda İfadeleri: fun Anahtar Sözcüğü (F#)

fun Anahtar sözcüğünü lambda ifadesi, başka bir deyişle, anonim bir işlevi tanımlamak için kullanılır.

fun parameter-list -> expression

Notlar

parameter-list Genellikle adları ve parametre türlerini, isteğe bağlı olarak oluşur.Daha genel tanımıyla parameter-list herhangi bir F# desenlerini oluşturulmuş olabilir.Olası desenleri tam listesi için bkz: Desen Eşleştirme (F#).Geçerli parametrelerin listesi örnek olarak şunlar gösterilebilir.

// 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 -> …

expression Gövdesi işlevinin dönüş değeri, son ifade oluşturur.Geçerli lambda ifadeleri örnekleri şunlardır:

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)

Lambda ifadeleri kullanma

Lambda ifadeleri, bir liste veya diğer toplama işlemleri gerçekleştirmek ve bir işlevi tanımlayan ek iş önlemek istiyorsanız istediğinizde özellikle yararlıdır.Birçok F# kitaplığı işlevleri bağımsız değişkenler olarak işlev değerlerini alabilir ve bu gibi durumlarda lambda ifadesi kullanmak özellikle kullanışlı olabilir.Aşağıdaki kod bir lambda ifadesi bir liste öğelerine uygulanır.Bu durumda anonim işlev 1 her bir liste öğesine ekler.

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

Ayrıca bkz.

Başvuru

İşlevler (F#)