linq
Linq Verwenden von Take While und Skip While
Suche…
Einführung
Take, Skip, TakeWhile und SkipWhile werden alle als Partitionierungsoperatoren bezeichnet, da sie einen Abschnitt einer Eingabesequenz erhalten, die von einer bestimmten Bedingung bestimmt wird. Lassen Sie uns diese Operatoren diskutieren
Methode nehmen
Die Take-Methode Bringt Elemente an eine bestimmte Position, beginnend mit dem ersten Element in einer Sequenz. Unterschrift der Einnahme:
Public static IEnumerable<TSource> Take<TSource>(this IEnumerable<TSource> source,int count);
Beispiel:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var TakeFirstFiveElement = numbers.Take(5);
Ausgabe:
Das Ergebnis ist 1,5,8,4 und 9, um fünf Elemente zu erhalten.
Methode überspringen
Überspringt Elemente bis zu einer angegebenen Position, beginnend mit dem ersten Element in einer Sequenz.
Unterschrift von Skip:
Public static IEnumerable Skip(this IEnumerable source,int count);
Beispiel
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.Take(5);
Ausgabe: Das Ergebnis ist 3,6,7,2 und 0, um das Element zu erhalten.
TakeWhile ():
Gibt Elemente aus der angegebenen Auflistung zurück, bis die angegebene Bedingung erfüllt ist. Wenn das erste Element selbst die Bedingung nicht erfüllt, wird eine leere Auflistung zurückgegeben.
Unterschrift von TakeWhile ():
Public static IEnumerable <TSource> TakeWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,bool>,predicate);
Eine weitere Überladungssignatur:
Public static IEnumerable <TSource> TakeWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,int,bool>,predicate);
Beispiel I:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.TakeWhile(n => n < 9);
Ausgabe:
Es wird von Element 1,5,8 und 4 zurückkehren
Beispiel II
int[] numbers = { 1, 2, 3, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.TakeWhile((n,Index) => n < index);
Ausgabe:
Es wird von Element 1,2,3 und 4 zurückkehren
SkipWhile ()
Überspringt Elemente basierend auf einer Bedingung, bis ein Element die Bedingung nicht erfüllt. Wenn das erste Element selbst die Bedingung nicht erfüllt, überspringt es 0 Elemente und gibt alle Elemente in der Sequenz zurück.
Unterschrift von SkipWhile ():
Public static IEnumerable <TSource> SkipWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,bool>,predicate);
Eine weitere Überladungssignatur:
Public static IEnumerable <TSource> SkipWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,int,bool>,predicate);
Beispiel I:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.SkipWhile(n => n < 9);
Ausgabe:
Es wird von Element 9,3,6,7,2 und 0 zurückkehren.
Beispiel II
int[] numbers = { 4, 5, 8, 1, 9, 3, 6, 7, 2, 0 };
var indexed = numbers.SkipWhile((n, index) => n > index);
Ausgabe:
Es wird von Element 1,9,3,6,7,2 und 0 zurückkehren.