Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais
Cette documentation est archivée et n’est pas conservée.

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

Retourne l'index du premier élément pour lequel la fonction donnée retourne la valeur true.

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

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

// Signature:
Seq.findIndex : ('T -> bool) -> seq<'T> -> int

// Usage:
Seq.findIndex predicate source

predicate

Type : 'T ->bool

Fonction permettant de tester si l'index d'un élément particulier doit être retourné.

source

Type : seq<'T>

Séquence d'entrée.

Exception

Condition

ArgumentNullException

Levée lorsque la séquence d'entrée a la valeur Null.

KeyNotFoundException

Levée si aucun élément ne retourne la valeur True en cas d'évaluation par le prédicat.

L'index du premier élément pour lequel la fonction donnée retourne la valeur true.

Cette fonction se nomme FindIndex 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.

L'exemple de code suivant montre comment utiliser Seq.findIndex.


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


Sortie

            
              Le premier élément qui correspond à la fois à un carré et à un cube est 64 et son index est 62.

            
          

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

Versions de bibliothèque principale F#

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

Afficher: