當前位置:成語大全網 - 新華字典 - C#中的叠代器是作什麽用的?

C#中的叠代器是作什麽用的?

妳需要理解什麽是數組Array,什麽是集合IConnection,什麽是IList開始.

舉個簡單例子:

數組如 string ar=new string[]{"a","b","c"}

這是壹個簡單字符串數組。

假設我需要提取數組中的每壹個元素,我該怎麽辦呢?

所以那些天才們就想出壹種方案,用C#語法表達是:

forech(string item in ar)

{

MessageBox.Show(item);

}

然後妳可以把forech(string item in ar)這種語法理解為叠代器.

專業解釋:

1.叠代器是可以返回相同類型值的有序序列的壹段代碼;

2.叠代器可用作方法、運算符或get訪問器的代碼體;

3.叠代器代碼使用yield return語句依次返回每個元素,yield break將終止叠代;

4.可以在類中實現多個叠代器,每個叠代器都必須像任何類成員壹樣有惟壹的名稱,並且可以在foreach語句中被客戶端代碼調用;

5.叠代器的返回類型必須為IEnumerable和IEnumerator中的任意壹種;

6.叠代器是產生值的有序序列的壹個語句塊,不同於有壹個 或多個yield語句存在的常規語句塊;

7.叠代器不是壹種成員,它只是實現函數成員的方式,理解這壹點是很重要的,壹個通過叠代器實現的成員,可以被其他可能或不可能通過叠代器實現的成員覆蓋和重載;

8.叠代器塊在C#語法中不是獨特的元素,它們在幾個方面受到限制,並且主要作用在函數成員聲明的語義上,它們在語法上只是語句塊而已;