Partager via


List.reduce<'T>, fonction (F#)

Applique une fonction à chaque élément de la collection, en créant ainsi un thread d'un argument d'accumulation par l'intermédiaire du calcul. Cette fonction applique d'abord la fonction aux deux premiers éléments de la liste. Elle passe ensuite ce résultat dans la fonction avec le troisième élément et ainsi de suite. Enfin, elle retourne le résultat final. Si la fonction d'entrée est f et que les éléments sont i0...iN, calcule alors f (... (f i0 i1) i2 ...) iN.

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

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

// Signature:
List.reduce : ('T -> 'T -> 'T) -> 'T list -> 'T

// Usage:
List.reduce reduction list

Paramètres

  • reduction
    Type : 'T -> 'T -> 'T

    Fonction permettant de réduire deux éléments de liste en un seul élément.

  • list
    Type : 'T list

    Liste d'entrée.

Exceptions

Exception

Condition

ArgumentException

Levée lorsque la liste est vide.

Valeur de retour

Valeur réduite finale.

Notes

Cette fonction se nomme Reduce 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 de code suivant illustre l'utilisation de List.reduce.

let sumAList list =
    try
        List.reduce (fun acc elem -> acc + elem) list
    with
       | :? System.ArgumentException as exc -> 0

let resultSum = sumAList [2; 4; 10]
printfn "%d " resultSum

Sortie

  

Plateformes

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2

Informations de version

Runtime F#

Pris en charge dans : 2.0, 4.0

Silverlight

Prise en charge dans : 3

Voir aussi

Référence

Collections.List, module (F#)

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

Historique des modifications

Date

Historique

Motif

Mai 2010

Ajout d'un exemple de code

Améliorations apportées aux informations.