温馨提示×

c#中yield return的用法是什么

c#
小亿
94
2024-03-04 17:59:56
栏目: 编程语言

在C#中,yield return用于创建一个迭代器(iterator),使得一个方法可以在每次调用时返回一个序列中的元素。通过yield return可以简化迭代器的实现,使代码更加简洁和易读。

当在一个方法中使用yield return时,这个方法就会变成一个迭代器方法,可以通过foreach循环来迭代返回的元素序列。每次调用迭代器方法时,方法会执行到yield return语句处,将表达式的值作为当前元素返回给调用者,并在下一次调用时从yield return语句的下一行开始执行。

例如,下面是一个使用yield return的简单示例:

public static IEnumerable<int> GetNumbers()
{
    yield return 1;
    yield return 2;
    yield return 3;
}

// 调用GetNumbers方法
foreach (int num in GetNumbers())
{
    Console.WriteLine(num);
}

在上面的示例中,GetNumbers方法是一个迭代器方法,通过yield return关键字返回了一个包含1、2、3的整数序列。在foreach循环中,可以依次遍历并打印出每一个元素。

0