linq
Linq Uso Take take e Skip While
Ricerca…
introduzione
Take, Skip, TakeWhile e SkipWhile sono tutti chiamati operatori di partizionamento poiché ottengono una sezione di una sequenza di input determinata da una determinata condizione. Cerchiamo di discutere di questi operatori
Prendi il metodo
Il metodo Take Porta gli elementi fino a una posizione specificata a partire dal primo elemento di una sequenza. Firma di Take:
Public static IEnumerable<TSource> Take<TSource>(this IEnumerable<TSource> source,int count);
Esempio:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var TakeFirstFiveElement = numbers.Take(5);
Produzione:
Il risultato è 1,5,8,4 e 9 per ottenere cinque elementi.
Salta Metodo
Salta gli elementi fino a una posizione specificata a partire dal primo elemento di una sequenza.
Firma di Skip:
Public static IEnumerable Skip(this IEnumerable source,int count);
Esempio
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.Take(5);
Uscita: il risultato è 3,6,7,2 e 0 per ottenere l'elemento.
TakeWhile ():
Restituisce gli elementi dalla raccolta specificata fino a quando la condizione specificata è vera. Se il primo elemento non soddisfa la condizione, restituisce una raccolta vuota.
Firma di TakeWhile ():
Public static IEnumerable <TSource> TakeWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,bool>,predicate);
Un'altra firma di carico eccessivo:
Public static IEnumerable <TSource> TakeWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,int,bool>,predicate);
Esempio I:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.TakeWhile(n => n < 9);
Produzione:
Restituirà Di eleament 1,5,8 e 4
Esempio II:
int[] numbers = { 1, 2, 3, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.TakeWhile((n,Index) => n < index);
Produzione:
Restituirà degli elementi 1,2,3 e 4
SkipWhile ()
Salta gli elementi in base a una condizione finché un elemento non soddisfa la condizione. Se il primo elemento non soddisfa la condizione, salta quindi 0 elementi e restituisce tutti gli elementi nella sequenza.
Firma di SkipWhile ():
Public static IEnumerable <TSource> SkipWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,bool>,predicate);
Un'altra firma di carico eccessivo:
Public static IEnumerable <TSource> SkipWhile<TSource>(this IEnumerable <TSource> source,Func<TSource,int,bool>,predicate);
Esempio I:
int[] numbers = { 1, 5, 8, 4, 9, 3, 6, 7, 2, 0 };
var SkipFirstFiveElement = numbers.SkipWhile(n => n < 9);
Produzione:
Restituirà degli elementi 9,3,6,7,2 e 0.
Esempio II:
int[] numbers = { 4, 5, 8, 1, 9, 3, 6, 7, 2, 0 };
var indexed = numbers.SkipWhile((n, index) => n > index);
Produzione:
Restituirà degli elementi 1,9,3,6,7,2 e 0.