Recherche…


Introduction

Take, Skip, TakeWhile et SkipWhile sont tous des opérateurs de partitionnement puisqu'ils obtiennent une section d'une séquence d'entrée déterminée par une condition donnée. Parlons de ces opérateurs

Prendre méthode

La méthode Take Prend les éléments à une position spécifiée à partir du premier élément d'une séquence. Signature de Take:

Public static IEnumerable<TSource> Take<TSource>(this IEnumerable<TSource> source,int count);

Exemple:

int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var TakeFirstFiveElement = numbers.Take(5);

Sortie:

Le résultat est 1,5,8,4 et 9 pour obtenir cinq éléments.

Méthode Skip

Saut des éléments à une position spécifiée à partir du premier élément d'une séquence.

Signature de Skip:

Public static IEnumerable Skip(this IEnumerable source,int count);

Exemple

int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.Take(5);

Sortie: Le résultat est 3,6,7,2 et 0 pour obtenir l'élément.

TakeWhile ():

Retourne les éléments de la collection donnée jusqu'à ce que la condition spécifiée soit vraie. Si le premier élément lui-même ne satisfait pas la condition, il renvoie alors une collection vide.

Signature de TakeWhile ():

Public static IEnumerable <TSource> TakeWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,bool>,predicate);

Une autre signature de surcharge:

Public static IEnumerable <TSource> TakeWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,int,bool>,predicate);

Exemple I:

int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.TakeWhile(n => n < 9);

Sortie:

Il reviendra des résultats 1,5,8 et 4

Exemple II:

int[] numbers = { 1, 2, 3, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.TakeWhile((n,Index) => n < index);

Sortie:

Il renverra de l'élément 1,2,3 et 4

SkipWhile ()

Ignore les éléments en fonction d'une condition jusqu'à ce qu'un élément ne réponde pas à la condition. Si le premier élément lui-même ne satisfait pas la condition, il ignore alors 0 élément et renvoie tous les éléments de la séquence.

Signature de SkipWhile ():

Public static IEnumerable <TSource> SkipWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,bool>,predicate);

Une autre signature de surcharge:

Public static IEnumerable <TSource> SkipWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,int,bool>,predicate);

Exemple I:

int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.SkipWhile(n => n < 9);

Sortie:

Il retournera de l'élément 9,3,6,7,2 et 0.

Exemple II:

int[] numbers = { 4, 5, 8, 1, 9, 3, 6, 7, 2, 0 };
var indexed = numbers.SkipWhile((n, index) => n > index);

Sortie:

Il renverra de l'élément 1,9,3,6,7,2 et 0.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow