Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale

Espressioni lambda: parola chiave fun (F#)

La parola chiave fun è utilizzata per definire un'espressione lambda, ovvero una funzione anonima.

fun parameter-list -> expression

parameter-list in genere è costituito da nomi e, facoltativamente, tipi di parametri. Più in generale, parameter-list può essere composta da tutti i modelli di F#. Per un elenco completo di modelli possibili, vedere Criteri di ricerca [F#]. Gli elenchi di parametri validi includono gli esempi seguenti.


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

L'elemento expression è il corpo della funzione, di cui l'ultima espressione genera un valore restituito. Di seguito sono illustrati alcuni esempi di espressioni lambda valide:


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)


Le espressioni lambda sono particolarmente utili quando si desidera eseguire operazioni su un elenco o un'altra raccolta e si desidera evitare lavoro aggiuntivo legato alla definizione di una funzione. Numerose funzioni della libreria F# accettano valori di funzione come argomenti e in tali casi può essere particolarmente appropriato utilizzare un'espressione lambda. Nel codice seguente viene applicata un'espressione lambda agli elementi di un elenco. In questo caso, la funzione anonima consente di aggiungere 1 a ogni elemento di un elenco.


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


Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft