Array.tryFind<'T> (Función de F#)
Devuelve el primer elemento para el cual la función especificada devuelve true.Devuelve None si no existe ese elemento.
Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Collections.Array
Ensamblado: FSharp.Core (en FSharp.Core.dll)
// Signature:
Array.tryFind : ('T -> bool) -> 'T [] -> 'T option
// Usage:
Array.tryFind predicate array
Parámetros
predicate
Tipo: 'T ->boolFunción que se va a usar para comprobar los elementos de entrada.
array
Tipo: 'T[]Matriz de entrada.
Valor devuelto
Primer elemento que cumple el predicado, o None.
Comentarios
Esta función se denomina TryFind en los ensamblados compilados.Si obtiene acceso a la función desde un lenguaje .NET distinto de F# o mediante reflexión, use este nombre.
Ejemplo
El ejemplo siguiente muestra el uso de Array.tryFind para intentar buscar los elementos de matriz que sean tanto cubos perfectos como cuadrados perfectos.
let delta = 1.0e-10
let isPerfectSquare (x:int) =
let y = sqrt (float x)
abs(y - round y) < delta
let isPerfectCube (x:int) =
let y = System.Math.Pow(float x, 1.0/3.0)
abs(y - round y) < delta
let lookForCubeAndSquare array1 =
let result = Array.tryFind (fun elem -> isPerfectSquare elem && isPerfectCube elem) array1
match result with
| Some x -> printfn "Found an element: %d" x
| None -> printfn "Failed to find a matching element."
lookForCubeAndSquare [| 1 .. 10 |]
lookForCubeAndSquare [| 100 .. 1000 |]
lookForCubeAndSquare [| 2 .. 50 |]
Plataformas
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Información de versiones
Versiones de la biblioteca básica de F#
Se admite en: 2.0, 4.0, portables