Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Expresiones lambda: la palabra clave fun (F#)

La palabra clave fun se utiliza para definir una expresión lambda, es decir, una función anónima.

fun parameter-list -> expression

parameter-list normalmente consiste en nombres y, opcionalmente, tipos de parámetros. Más generalmente, parameter-list puede consistir en cualquier modelo de F#. Para obtener una lista completa de los modelos posibles, vea Coincidencia de modelos [F#]. Las listas de parámetros válidos se incluyen los siguientes ejemplos.


// 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 es el cuerpo de la función, cuya última expresión genera un valor devuelto. A continuación se muestran algunos ejemplos de expresiones lambda válidas:


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)


Las expresiones lambda resultan especialmente útiles cuando se desea realizar operaciones con una lista u otra colección y se desear evitar tener que definir una función. Muchas funciones de biblioteca de F# toman valores de función como argumentos; en estos casos puede resultar especialmente cómodo utilizar expresiones lambda. En el código siguiente se aplica una expresión lambda a los elementos de una lista. En este caso, la función anónima suma 1 a cada elemento de una lista.


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


Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft