在偶然的機會下發現了這個關鍵字yield,它的作用是在乙個迴圈體(例如:foreach,for)內部 與return 一起做輸出.要注意的是yield return 所在函式的返回值為ienumerable介面型別
下面實現的是從一堆資料中找出大於特定數字的結果集。
namespace test; foreach (int item in getthehigherlist(inputlist,3))
console.read();
}public static ienumerable getthehigherlist(int inputlist,int lowerint)}}
}}
輸出結果是:
Python的yield關鍵字
忽然得知python有個叫yield的關鍵字,好奇之下去查了查,花了點時間基本弄明白了,故寫在此備忘,順便充充字數。yield關鍵字用來定義生成器 generator 其具體功能是可以當return使用,從函式裡返回乙個值,不同之處是用yield返回之後,可以讓函式從上回yield返回的地點繼續執行...
Python的yield關鍵字
忽然得知python有個叫yield的關鍵字,好奇之下去查了查,花了點時間基本弄明白了,故寫在此備忘,順便充充字數。yield關鍵字用來定義生成器 generator 其具體功能是可以當return使用,從函式裡返回乙個值,不同之處是用yield返回之後,可以讓函式從上回yield返回的地點繼續執行...
yield關鍵字的使用
這樣,這個函式不停地執行,就產生了源源不斷的資料,這樣的函式就叫生成器。這就是生成器的寫法,此處給出乙個函式gen,它能夠產生小於n的所有整數的平方值。按照生成器的定義,這個函式執行時,它會首先執行for迴圈,然後執行到yield的這行語句的時候,這個函式就會被凍結,而當前yield對應的那一行產生...