📜  LINQ |分区运算符|跳过而(1)

📅  最后修改于: 2023-12-03 15:17:19.853000             🧑  作者: Mango

LINQ 分区运算符 | 跳过

在LINQ中,分区运算符用于将数据集合分为两个或多个不同的子集。

  • 跳过(Partitioning Operators):用于在数据集合中跳过指定数量的元素并返回剩余的元素集合。
Skip()

Skip()方法用于跳过数据集合中指定数量的元素,并返回剩余的元素集合。

语法:

public static IEnumerable<TSource> Skip<TSource>(this IEnumerable<TSource> source, int count);

参数:

source:IEnumerable<TSource> 类型的输入序列

count:跳过元素数量的整数值

返回值:

IEnumerable 类型的剩余元素集合

示例:

var numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var result = numbers.Skip(5);

foreach(var number in result)
{
    Console.Write(number + " "); // 6 7 8 9 10
}

在上面的示例中,Skip()方法跳过了 numbers 列表中的前5个元素,并返回剩余的元素集合。

SkipWhile()

SkipWhile()方法类似于 Skip() 方法,不同的是它跳过序列中满足指定条件的元素,并返回剩余的元素集合。

语法:

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

参数:

source:IEnumerable<TSource> 类型的输入序列

predicate:Func<TSource, int, bool> 类型的一个委托,用于判断元素是否满足跳过条件

返回值:

IEnumerable<TSource> 类型的剩余元素集合

示例:

var numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var result = numbers.SkipWhile(x => x < 6);

foreach(var number in result)
{
    Console.Write(number + " "); // 6 7 8 9 10
}

在上面的示例中,SkipWhile()方法跳过了 numbers 列表中小于6的元素,并返回剩余的元素集合。

Take()

Take()方法用于从数据集合中获取指定数量的元素。

语法:

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

参数:

source:IEnumerable<TSource> 类型的输入序列

count:要获取元素数量的整数值

返回值:

IEnumerable<TSource> 类型的元素集合

示例:

var numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var result = numbers.Take(5);

foreach(var number in result)
{
    Console.Write(number + " "); // 1 2 3 4 5
}

在上面的示例中,Take()方法从 numbers 列表中获取前5个元素,并返回元素集合。

TakeWhile()

TakeWhile()方法类似于 Take() 方法,不同的是它从序列的开头获取满足指定条件的元素。

语法:

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

参数:

source:IEnumerable<TSource> 类型的输入序列

predicate:Func<TSource, int, bool> 类型的一个委托,用于判断元素是否满足获取条件

返回值:

IEnumerable<TSource> 类型的符合条件的元素集合

示例:

var numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var result = numbers.TakeWhile(x => x < 6);

foreach(var number in result)
{
    Console.Write(number + " "); // 1 2 3 4 5
}

在上面的示例中,TakeWhile()方法从 numbers 列表中获取小于6的元素,并返回元素集合。

以上就是LINQ分区运算符中的跳过操作介绍,期望对你有所帮助!