Sdílet prostřednictvím


Seq.fold<'T,'State> – funkce (F#)

Funkce se vztahuje na každý prvek kolekce threading argument akumulátorové prostřednictvím výpočtu.Jestliže je vstupní funkce f a jsou i0...iN, pak tato funkce vypočítá f (... (f s i0)...) iN.

Cesta k oboru názvů nebo modul: Microsoft.FSharp.Collections.Seq

Sestavení: FSharp.Core (v FSharp.Core.dll)

// Signature:
Seq.fold : ('State -> 'T -> 'State) -> 'State -> seq<'T> -> 'State

// Usage:
Seq.fold folder state source

Parametry

  • folder
    Typ:'State -> 'T -> 'State

    Funkce, která aktualizuje stav každého prvku z číselné řady.

  • state
    Typ:'State

    Počáteční stav.

  • source
    Typ: SEQ.<'T>

    Vstupní sekvence.

Výjimky

Výjimka

Podmínka

ArgumentNullException

Vyvolána při vstupní posloupnost je null.

Vrácená hodnota

Konečný výsledek výpočtu.

Poznámky

Tato funkce se nazývá Fold v kompilovaný sestavení.Pokud přistupujete k funkci jazyka než F# nebo prostřednictvím reflexe, tento název použijte.

Příklad

Následující kód ukazuje způsob použití Seq.fold implementace, která vypočítává součet pořadí prvků.

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."

Výsledek

  

Platformy

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

Informace o verzi

F# základní verze knihovny

Podporovány: 2.0, 4.0, přenosné

Viz také

Referenční dokumentace

Collections.Seq – modul (F#)

Microsoft.FSharp.Collections – obor názvů (F#)