c#中yield的關鍵字幾乎沒有見過,今天用了一下,感覺很不錯。
他是乙個語法糖,直接將集合中滿足條件的資料返回給呼叫者,提高效能。
直接上例子:
static void main(string args)
;foreach (var item in strtoint(strs))
}console.readkey();
}static liststrtointgeneral(string str)
return list;
}static ienumerablestrtoint(string str)
//yield return就是將return的結果加到返回的集合中
//yield 關鍵字,將當前**凍結,將控制器交給呼叫者,一旦滿足條件立即返回結果.
}
兩種寫法比較,可以觀察出執行順序和**的書寫。
如果資料量很大,那麼效能就非常的明顯了,找到資料交給被呼叫者直接返回結果,不迴圈所有的資料再返回.
動手除錯一下看看呢.
C yield 關鍵字 使用
在語句中使用 yield 關鍵字,則指示在的方案 運算子或 get 訪問器是迭代器。使用的迭代器對集合的自定義迭代。使用乙個 yield return 語句返回每個元素乙個節點。例子 public class powersof2 i public static system.collections....
解析c yield關鍵字
1.yield實現的功能 yield return 先看下面的 通過yield return實現了類似用foreach遍歷陣列的功能,說明yield return也是用來實現迭代器的功能的。using static system.console using system.collections.ge...
c yield關鍵字原理詳解
1.yield實現的功能 yield return 先看下面的 通過yield return實現了類似用foreach遍歷陣列的功能,說明yield return也是用來實現迭代器的功能的。using static system.console using system.collections.ge...