title

author

date

CreateTime

categories

dotnet 列表 Linq 的 Take 用法

lindexi

2019-10-24 9:4:23 +0800

2019-10-12 10:50:1 +0800

dotnet

在 dotnet 可以使用 Take 获取指定数量的元素,获取顺序是从前向后,而获取到的数量是小于等于传入的指定数量。如数组中元素的数量小于传入的指定数量,则返回数组中的所有元素。如果数组中元素的数量大于等于传入的数量,则按照数组或列表顺序返回指定数量的元素

在使用 Take 方法之前,请引用命名空间

using System.Linq;


获取的时候通过在枚举类添加 Take 方法传入获取数量就可以返回小于或等于指定数量的元素

var list = new List<int>();
for (int i = 0; i < 10; i++)
{
list.Add(i);
}

foreach (var temp in list.Take(100))
{
Console.WriteLine(temp);
}


如上面代码,传入的获取数量是100而数组里面只有10个元素,那么将返回10个元素

一些细节如下:

如果传入的 Count 值小于等于 0 那么将会返回空列表

因为用的是延迟加载,所以没有枚举是不会执行逻辑

如果是列表将会返回 ListPartition 实例,但这是一个内部类 ​​ListPartition​

更多请看 ​​Enumerable.Take​​ 官方文档

源代码请看 ​​src/System.Linq/src/System/Linq/Take.cs​