TakeWhile()

返回给定集合中的元素,直到指定的条件为 true。如果第一个元素本身不满足条件,则返回一个空集合。

TakeWhile() 的签名:

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

另一个过载签名:

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

例 I:

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

输出:

它将返回元素 1,5,8 和 4

例二:

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

输出:

它将返回元素 1,2,3 和 4