【发布时间】:2016-06-10 08:33:51
【问题描述】:
class Program {
static List<int> MyList;
static void Main(string[] args) {
MyList = new List<int>() { 1,24,56,7};
var sn = FilterWithYield();
}
static IEnumerable<int> FilterWithYield() {
foreach (int i in MyList) {
if (i > 3)
yield return i;
}
}
}
问题:IEnumerable 是一种只读类型。所以我的问题是 IEnumerable 将如何只返回一个元素。 IEnumerable 没有要添加的方法。它是否从 IEnumerator 的属性“Current”返回。??如果是这样,我们可以说每次 yield return 返回一个元素/项目时它是 IEnumerator 的当前属性吗?
【问题讨论】:
-
乔恩的建议很好。您可能还想阅读此内容:blogs.msdn.microsoft.com/oldnewthing/20080812-00/?p=21273
标签: c#