Enumerable.Take Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
Take<TSource>(IEnumerable<TSource>, Int32) |
Gibt eine angegebene Anzahl von zusammenhängenden Elementen ab dem Anfang einer Sequenz zurück |
Take<TSource>(IEnumerable<TSource>, Range) |
Gibt einen angegebenen Bereich von zusammenhängenden Elementen aus einer Sequenz zurück. |
Take<TSource>(IEnumerable<TSource>, Int32)
- Quelle:
- Take.cs
- Quelle:
- Take.cs
- Quelle:
- Take.cs
Gibt eine angegebene Anzahl von zusammenhängenden Elementen ab dem Anfang einer Sequenz zurück
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<TSource> ^ Take(System::Collections::Generic::IEnumerable<TSource> ^ source, int count);
public static System.Collections.Generic.IEnumerable<TSource> Take<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, int count);
static member Take : seq<'Source> * int -> seq<'Source>
<Extension()>
Public Function Take(Of TSource) (source As IEnumerable(Of TSource), count As Integer) As IEnumerable(Of TSource)
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IEnumerable<TSource>
Die Sequenz, aus der Elemente zurückgegeben werden sollen.
- count
- Int32
Die Anzahl der zurückzugebenden Elemente.
Gibt zurück
Ein IEnumerable<T>, das die angegebene Anzahl von Elementen ab dem Anfang der Eingabesequenz enthält
Ausnahmen
source
ist null
.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Take Elemente vom Anfang einer Sequenz zurückgegeben werden.
int[] grades = { 59, 82, 70, 56, 92, 98, 85 };
IEnumerable<int> topThreeGrades =
grades.OrderByDescending(grade => grade).Take(3);
Console.WriteLine("The top three grades are:");
foreach (int grade in topThreeGrades)
{
Console.WriteLine(grade);
}
/*
This code produces the following output:
The top three grades are:
98
92
85
*/
' Create an array of Integer values that represent grades.
Dim grades() As Integer = {59, 82, 70, 56, 92, 98, 85}
' Get the highest three grades by first sorting
' them in descending order and then taking the
' first three values.
Dim topThreeGrades As IEnumerable(Of Integer) =
grades _
.OrderByDescending(Function(grade) grade) _
.Take(3)
' Display the results.
Dim output As New System.Text.StringBuilder("The top three grades are:" & vbCrLf)
For Each grade As Integer In topThreeGrades
output.AppendLine(grade)
Next
Console.WriteLine(output.ToString())
' This code produces the following output:
'
' The top three grades are:
' 98
' 92
' 85
Hinweise
Diese Methode wird mithilfe der verzögerten Ausführung implementiert. Der Sofortige Rückgabewert ist ein Objekt, das alle Informationen speichert, die zum Ausführen der Aktion erforderlich sind. Die von dieser Methode dargestellte Abfrage wird erst ausgeführt, wenn das Objekt entweder durch direktes Aufrufen der GetEnumerator
-Methode oder mithilfe foreach
von in C# oder For Each
in Visual Basic aufgezählt wird.
Take Listet source
Elemente auf und ergibt sie, bis count
Elemente zurückgegeben wurden oder source
keine weiteren Elemente enthalten. Wenn count
die Anzahl der Elemente in source
überschreitet, werden alle Elemente von source
zurückgegeben.
Wenn count
kleiner oder gleich 0 ist, source
wird nicht aufgelistet, und ein leerer IEnumerable<T> Wert wird zurückgegeben.
Die Take Methoden und Skip sind funktionale Ergänzungen. Bei einer Auflistungssequenz coll
und einer ganzen Zahl n
ergibt die Verkettung der Ergebnisse von coll.Take(n)
und coll.Skip(n)
die gleiche Sequenz wie coll
.
In der Visual Basic-Abfrageausdruckssyntax wird eine Take
-Klausel in einen Aufruf von Takeübersetzt.
Weitere Informationen
Gilt für:
Take<TSource>(IEnumerable<TSource>, Range)
- Quelle:
- Take.cs
- Quelle:
- Take.cs
- Quelle:
- Take.cs
Gibt einen angegebenen Bereich von zusammenhängenden Elementen aus einer Sequenz zurück.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<TSource> ^ Take(System::Collections::Generic::IEnumerable<TSource> ^ source, Range range);
public static System.Collections.Generic.IEnumerable<TSource> Take<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Range range);
static member Take : seq<'Source> * Range -> seq<'Source>
<Extension()>
Public Function Take(Of TSource) (source As IEnumerable(Of TSource), range As Range) As IEnumerable(Of TSource)
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IEnumerable<TSource>
Die Sequenz, aus der Elemente zurückgegeben werden sollen.
- range
- Range
Der Bereich der zurückzugebenden Elemente, der Start- und Endindizes entweder vom Anfang oder am Ende der Sequenz aufweist.
Gibt zurück
Ein IEnumerable<T> , der den angegebenen Bereich von Elementen aus der source
Sequenz enthält.
Ausnahmen
source
ist null
Hinweise
Diese Methode wird mithilfe der verzögerten Ausführung implementiert. Der Sofortige Rückgabewert ist ein Objekt, das alle Informationen speichert, die zum Ausführen der Aktion erforderlich sind. Die von dieser Methode dargestellte Abfrage wird erst ausgeführt, wenn das Objekt entweder durch direktes Aufrufen der GetEnumerator
-Methode oder mithilfe foreach
von in C# oder For Each
in Visual Basic aufgezählt wird.
Take listet Elemente auf source
und ergibt, deren Indizes zum angegebenen range
gehören.