记录下一个自己不常用的关键字-yield

yield 这个关键字 一直很少用,也不知道具体用途。按照习惯就查询了下MSDN。

意思大致是这样的:在迭代器块中用于向枚举数对象提供值或发出迭代结束信号

表现形式:1. yield return <值>  //返回值

             2.  yield break; //结束迭代

下面是我测试代码:

            Array.ForEach(returnInt().ToArray(), s => Console.WriteLine(s)); //yield return 表现方式

            Array.ForEach(returnOneInt().ToArray(), s => Console.WriteLine(s)); //yield break 表现方式

            ProductList list=new ProductList();

            Array.ForEach(list.Getall.ToArray(), s => Console.WriteLine(s.ProductName)); //yield 实际当中返回实体方法 很好用

            Console.Read();

yield return 和return 的区别 ,我认为主要就是 yield return 必须用在迭代器中而return 不需要。
yield return 需要和枚举公开器IEnumerable 搭配使用

也许搞错了 知道的同学 给我讲解下,谢谢!

示例代码下载:StudyYield.zip

posted on 2013-07-27 14:51  ~紫鱼~  阅读(203)  评论(0编辑  收藏  举报