C#中,什么时候用yield return

2020-05-30 综合 88阅读

yield是.NET2.0时代的语法糖,它是返回一个实现了IEnumerable接口的对象,在早期的.NET版本中,如果想返回IEnumerable对象,必须自己创建实现了IEnumerable和IEnumerator接口的对象,yield正是充当了这个角色。

 public IEnumerable SayHappyNewYear(){
     yield return "恭"; // yield在这里充当隐式的IEnumerator接口
     yield return "喜";
     yield return "发";
     yield return "财";
     yield break;    // 向迭代器发出结束迭代的信号
 }
 static void Main(string[] args){
    foreach (String item in (new Program()).SayHappyNewYear())
    {
     Console.Write(item);
    }
    
    Console.ReadKey(true);
 }
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com