C# 枚舉

2018-01-22 17:10 更新

C# 枚舉

枚舉器是值的列表上的只讀,只向前的光標(biāo)。

枚舉器是實(shí)現(xiàn)以下任一接口的對(duì)象:

System.Collections.IEnumerator
System.Collections.Generic.IEnumerator<T>

foreach 語(yǔ)句可以遍歷可枚舉對(duì)象。

例子

可枚舉對(duì)象實(shí)現(xiàn) IEnumerable IEnumerable<T> 。

可枚舉對(duì)象有一個(gè)名為GetEnumerator的方法,返回一個(gè)枚舉器。

IEnumerator IEnumerable System.Collections 中定義。

IEnumerator< T> IEnumerable< T> System.Collections.Generic 中定義。

下面是使用foreach語(yǔ)句對(duì)字符進(jìn)行迭代的高級(jí)方法:

foreach (char c in "hgci.cn"){
   Console.WriteLine (c);
}

這里是低層次的遍歷字符的方法,而不使用foreach語(yǔ)句:

using (var enumerator = "hgci.cn".GetEnumerator())
while (enumerator.MoveNext()) {
    var element = enumerator.Current;
    Console.WriteLine (element);
}

集合初始化程序

您可以在一個(gè)步驟中實(shí)例化和填充可枚舉對(duì)象。

例如:

using System.Collections.Generic;
...
List<int> list = new List<int> {1, 2, 3};

為了使上面的代碼起作用,enumerable對(duì)象必須實(shí)現(xiàn)System.Collections.IEnumerable接口,并且它具有一個(gè)Add方法,該方法具有適當(dāng)數(shù)量的調(diào)用參數(shù)。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)