Seq.take<'T>-Funktion (F#)
Gibt die Elemente der Sequenz bis zu einer angegebenen Zahl zurück.
Namespace/Modulpfad: Microsoft.FSharp.Collections.Seq
Assembly: FSharp.Core (in FSharp.Core.dll)
// Signature:
Seq.take : int -> seq<'T> -> seq<'T>
// Usage:
Seq.take count source
Parameter
Ausnahmen
Ausnahme |
Bedingung |
---|---|
Wird ausgelöst, wenn die Eingabesequenz leer ist. |
|
Wird ausgelöst, wenn die Eingabesequenz NULL ist. |
|
Wird ausgelöst, wenn die Anzahl die Anzahl der Elemente in der Sequenz überschreitet. |
Rückgabewert
Die Ergebnissequenz.
Hinweise
Seq.truncate gibt so viele Elemente zurück, wie die Sequenz enthält, statt eine Ausnahme auszulösen.
Der Name dieser Funktion in kompilierten Assemblys lautet Take. Verwenden Sie diesen Namen, wenn Sie in einer anderen .NET-Sprache als F# oder durch Reflektion auf die Funktion zugreifen.
Beispiel
Das folgende Beispiel wird die Verwendung von Seq.take gezeigt und das Verhalten Seq.truncate gegenübergestellt.
let mySeq = seq { for i in 1 .. 10 -> i*i }
let truncatedSeq = Seq.truncate 5 mySeq
let takenSeq = Seq.take 5 mySeq
let truncatedSeq2 = Seq.truncate 20 mySeq
let takenSeq2 = Seq.take 20 mySeq
let printSeq seq1 = Seq.iter (printf "%A ") seq1; printfn ""
// Up to this point, the sequences are not evaluated.
// The following code causes the sequences to be evaluated.
truncatedSeq |> printSeq
truncatedSeq2 |> printSeq
takenSeq |> printSeq
// The following line produces a run-time error (in printSeq):
takenSeq2 |> printSeq
Plattformen
Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2
Versionsinformationen
F#-Runtime
Unterstützt in: 2.0, 4.0
Silverlight
Unterstützt in: 3