Sdílet prostřednictvím


Seq.collect<'T,'Collection,'U> – funkce (F#)

Každý prvek sekvence se týká dané funkce a spojuje všechny výsledky.

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

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

// Signature:
Seq.collect : ('T -> 'Collection) -> seq<'T> -> seq<'U> (requires 'Collection :> seq<'U>)

// Usage:
Seq.collect mapping source

Parametry

  • mapping
    Typ:'T -> 'Collection

    Funkce pro transformaci do sekvence, které jsou zřetězeny prvky vstupní posloupnosti.

  • source
    Typ: SEQ.<'T>

    Vstupní sekvence.

Výjimky

Výjimka

Podmínka

ArgumentNullException

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

Vrácená hodnota

Řada výsledků.

Poznámky

Pořadí vyhodnocení pomalu plující.Účinky se zpožďují proto, dokud je ve výčtu.

Tato funkce se nazývá Collect 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 použití Seq.collect.

let addNegations seq1 =
   Seq.collect (fun x -> seq { yield x; yield -x }) seq1
   |> Seq.sort
addNegations [ 1 .. 4 ] |> Seq.iter (fun elem -> printf "%d " elem)
printfn ""
addNegations [| 0; -4; 2; -12 |] |> Seq.iter (fun elem -> printf "%d " elem)

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#)