yield是.NET2.0時代的語法糖,它是返回壹個實現了IEnumerable接口的對象,在早期的.NET版本中,如果想返回IEnumerable對象,必須自己創建實現了IEnumerable和IEnumerator接口的對象,yield正是充當了這個角色。
?public?IEnumerable<String>?SayHappyNewYear(){ yield?return?"恭";?//?yield在這裏充當隱式的IEnumerator接口 yield?return?"喜"; yield?return?"發"; yield?return?"財"; yield?break;//?向叠代器發出結束叠代的信號 } static?void?Main(string[]?args){foreach?(String?item?in?(new?Program()).SayHappyNewYear())
{
Console.Write(item);}
Console.ReadKey(true);
}