Funzione Seq.fold<'T,'State> (F#)
Applica una funzione a ogni elemento della raccolta, eseguendo il threading di un argomento di accumulatore attraverso il calcolo.Se la funzione di input è f e gli elementi sono i0...iN, tale funzione calcola f (... (f s i0)...) iN.
Percorso spazio dei nomi/modulo: Microsoft.FSharp.Collections.Seq
Assembly: FSharp.Core (in FSharp.Core.dll)
// Signature:
Seq.fold : ('State -> 'T -> 'State) -> 'State -> seq<'T> -> 'State
// Usage:
Seq.fold folder state source
Parametri
folder
Tipo: 'State -> 'T -> 'StateFunzione che aggiorna lo stato con ogni elemento dalla sequenza.
state
Tipo: 'StateStato iniziale.
source
Tipo: seq<'T>Sequenza di input.
Eccezioni
Eccezione |
Condizione |
---|---|
Generata se la sequenza di input è Null. |
Valore restituito
Risultato finale del calcolo.
Note
Questa funzione è denominata Fold negli assembly compilati.Utilizzare questo nome se si accede alla funzione da un linguaggio diverso da F# o tramite reflection.
Esempio
Nel codice seguente viene illustrato come utilizzare Seq.fold per implementare una funzione che calcoli la somma degli elementi di una sequenza.
let sumSeq sequence1 = Seq.fold (fun acc elem -> acc + elem) 0 sequence1
Seq.init 10 (fun index -> index * index)
|> sumSeq
|> printfn "The sum of the elements is %d."
Output
Piattaforme
Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Informazioni sulla versione
Versioni della libreria di base F#
Supportato in: 2,0, 4,0, portabile