何时使用Yield?
什么时候应该使用退货率,何时只能使用退货?
yield
结构用于创建一个可以连续生成多个值的迭代器:
IEnumerable<int> three_numbers() {
yield return 1;
yield return 2;
yield return 3;
}
...
foreach (var i in three_numbers()) {
// i becomes 1, 2 and 3, in turn.
}
当你返回一个可枚举的时候使用yield,并且你没有那个时候的所有结果。
实际上,当我想要遍历大块信息(数据库,平面文件等)时,我已经使用了yield,并且我不想首先在内存中加载所有内容。 良率是遍历块的好方法,不需要一次加载所有内容。
产量是针对迭代器的。
它可以让你处理一个小燕子的列表,这对于大名单是很好的。
关于Yield的神奇之处在于它记住了您在调用之间的位置。
如果你没有迭代你就不需要Yield。
链接地址: http://www.djcxy.com/p/9111.html上一篇: When to use Yield?