C#方法返回IEnumerable实现用foreach遍历

http://hi.baidu.com/tios/blog/item/43340a551cbcf7ceb745aed1.html

 

在C#中,只要函数返回IEnumerable,就能实现用foreach对元素进行遍历,代码如下

public class ReturnIEnumerable { public IEnumerable GetEnum() // 返回IEnumerable的方法 { for(int i=0;i<100;i++) { yield return i+1000; // 使用 yield return 返回 } yield break; // 使用 yield break 退出便利 } } public static void RunSnippet() { ReturnIEnumerable re = new ReturnIEnumerable(); foreach(int i in re.GetEnum()) // 在这里调用返回了IEnumerable的方法 { System.Console.WriteLine(i); } } 

从别的地方摘录的,各种使用的场景

1.如果你返回的集合是只用于遍历,不可修改的,则返回IEnumerable

2.如果返回的集合需要修改,如添加和删除元素,用ICollection

3.如果返回的集合需要支持排序,索引等,用IList

4.如果返回的集合要支持索引,但不能添加,删除元素,用ReadOnlyCollection

你可能感兴趣的:(.Net)