C#枚举yield和foreach
今天教授要求我们在课堂上解决这个练习,有人可以帮我解决我迷路...
这个练习和下一个练习的目的是强调枚举的力量,收益率和foreach语句。 声明一个泛型静态方法Flatten,它以IEnumerable<T>
的数组作为参数并返回一个IEnumerable<T>
。 使用foreach语句和yield return语句。 该方法应该有这个标题:
public static IEnumerable<T> Flatten<T>(IEnumerable<T>[] ebles) { ... }
如果您按以下所示调用方法,您应该得到2 3 5 7 2 3 5 7 2 3 5 7:
IEnumerable<int>[] ebles = new IEnumerable<int>[3];
ebles[0] = ebles[1] = ebles[2] = new int[] { 2, 3, 5, 7 };
foreach (int i in Flatten<int>(ebles))
Console.Write(i + " ");
你需要两个嵌套的foreach循环。 一个迭代ebles
内部的每个列表中的元素。 最内层的循环包含一个yield return element
;
这是大纲。 现在去阅读本大纲中提到的每个单词。
链接地址: http://www.djcxy.com/p/53713.html