停止IEnumerable枚举所有元素
本文关键字:元素 枚举 IEnumerable 停止 | 更新日期: 2023-09-27 18:29:49
如何阻止IEnumberable
枚举相关变量中的所有元素。我有一个函数,我将一个IEnumerable
列表传递给它,它总是只有两个元素。然而,我需要函数只为第一个元素运行,不多也不少。如何使它只经过第一个元素?
注意:由于只有两个元素,所以我尝试将它们分别传入(例如double
double
),但它仍然会同时传入这两个元素。
您可以使用Take
方法来执行以下操作:
profile = profile.Take(1);
现在,当您枚举profile
时,您将只遍历一项。
显示以下代码:
返回0
其确认实际上仅对其中一个项目进行了评估。
public static void Main()
{
var numbers = GetNumbers(2);
var result = numbers.Take(1);
// Evaluate only first number
result.ToArray();
}
public static IEnumerable<int> GetNumbers(int max)
{
for(int i = 0; i < max; i++)
{
Console.WriteLine("Returning {0}", i);
yield return i;
}
}