List.foldBack<'T,'State>, 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. Si la fonction d'entrée est f et que les éléments sont i0...iN, alors cette fonction calcule f i0 (...(f iN s)).
Espace de noms/Chemin du module : Microsoft.FSharp.Collections.List
Assembly : FSharp.Core (in FSharp.Core.dll)
// Signature:
List.foldBack : ('T -> 'State -> 'State) -> 'T list -> 'State -> 'State
// Usage:
List.foldBack folder list state
Paramètres
folder
Type : 'T -> 'State -> 'StateFonction permettant de mettre à jour l'état selon les éléments d'entrée.
list
Type : 'T listListe d'entrée.
state
Type : 'StateÉtat initial.
Valeur de retour
Valeur d'état finale.
Notes
Cette fonction se nomme FoldBack 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.foldBack.
let sumListBack list = List.foldBack (fun acc elem -> acc + elem) list 0
printfn "%d" (sumListBack [1; 2; 3])
// For a calculation in which the order of traversal is important, fold and foldBack have different
// results. For example, replacing foldBack with fold in the copyList function
// produces a function that reverses the list, rather than copying it.
let copyList list = List.foldBack (fun elem acc -> elem::acc) list []
printfn "%A" (copyList [1 .. 10])
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
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. |