码迷,mamicode.com
首页 > 其他好文 > 详细

yield return 和 yield break

时间:2016-05-10 23:27:26      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

//yield return 返回类型必须为 IEnumerableIEnumerable<T>IEnumerator 或 IEnumerator<T>

static IEnumerator<int> yieldTest() //yield return 返回IEnumerator 
{
yield return 1;
yield return 4;
if (true)//如果为True 输出 1,4;//如果是False 输出 1,4,3,2
{
yield break;
}
yield return 3;
yield return 2;
}
static void Main(string[] args)
{
var list = yieldTest();
while (list.MoveNext())
{
Console.WriteLine(list.Current);
}
Console.Read();
}

 

 

static IEnumerable<int> yieldTest2()//yield return 返回IEnumerable
{
yield return 1;
yield return 4;
if (!false)
{
yield break;
}
yield return 3;
yield return 2;
}
static void Main(string[] args)
{
var list = yieldTest2();
foreach(var item in list)
{
Console.WriteLine(item);
}
Console.Read();
}

yield return 和 yield break

标签:

原文地址:http://www.cnblogs.com/zhshlimi/p/5479721.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!