Partager via


Array.find<'T>, fonction (F#)

Retourne le premier élément pour lequel la fonction donnée retourne true. En l'absence d'élément de ce type, lève KeyNotFoundException.

Espace de noms/Chemin du module : Microsoft.FSharp.Collections.Array

Assembly : FSharp.Core (in FSharp.Core.dll)

// Signature:
Array.find : ('T -> bool) -> 'T [] -> 'T

// Usage:
Array.find predicate array

Paramètres

  • predicate
    Type : 'T -> bool

    Fonction permettant de tester les éléments d'entrée.

  • array
    Type : 'T []

    Tableau d'entrée.

Exceptions

Exception

Condition

KeyNotFoundException

Levée si predicate ne retourne pas true pour un élément.

Valeur de retour

Premier élément pour lequel le predicate retourne la valeur true.

Notes

Cette fonction se nomme Find dans les assemblys compilés. Si vous accédez à la fonction à partir d'un langage autre que F# ou par réflexion, utilisez ce nom.

Exemple

L'exemple suivant illustre l'utilisation de Array.find et de Array.findIndex pour identifier le premier entier supérieur à 1 qui est à la fois un carré et un cube.

let arrayA = [| 2 .. 100 |]
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 element = Array.find (fun elem -> isPerfectSquare elem && isPerfectCube elem) arrayA
let index = Array.findIndex (fun elem -> isPerfectSquare elem && isPerfectCube elem) arrayA
printfn "The first element that is both a square and a cube is %d and its index is %d." element index
  

Plateformes

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Informations de version

Versions de bibliothèque principale F#

Prise en charge dans : 2,0, 4,0, portables

Voir aussi

Référence

Collections.Array, module (F#)

Microsoft.FSharp.Collections, espace de noms (F#)

Array.findIndex<'T>, fonction (F#)