对象数组,使用foreach循环.必须要继承IEnumerable接口.实现GetEnumerator()方法.
下面是一个测试用的例子.
1
using System;
2
using System.Collections;
3
4
public class MyCollection : IEnumerable
5
{
6
protected ArrayList collection = new ArrayList(1024);
7
8
public MyCollection()
9
{
10
}
11
12
public object this[int index]
13
{
14
get { return collection[index]; }
15
}
16
17
public int Count
18
{
19
get { return collection.Count; }
20
}
21
22
internal virtual int Add(object objMember)
23
{
24
return collection.Add(objMember);
25
}
26
27
28
public IEnumerator GetEnumerator()
29
{
30
return collection.GetEnumerator();
31
}
32
}
33
34
public class MainClass
35
{
36
public static void Main(string [] args)
37
{
38
MyCollection myCollection = new MyCollection();
39
myCollection.Add("111");
40
myCollection.Add("222");
41
myCollection.Add("333");
42
myCollection.Add("444");
43
myCollection.Add("555");
44
45
foreach (object i in myCollection)
46
{
47
Console.WriteLine(i.ToString());
48
}
49
Console.ReadLine();
50
}
51
}
52
using System;2
using System.Collections;3

4
public class MyCollection : IEnumerable5
{6
protected ArrayList collection = new ArrayList(1024);7

8
public MyCollection()9
{10
}11

12
public object this[int index]13
{14
get { return collection[index]; }15
}16
17
public int Count18
{19
get { return collection.Count; }20
}21

22
internal virtual int Add(object objMember)23
{24
return collection.Add(objMember);25
}26

27

28
public IEnumerator GetEnumerator()29
{30
return collection.GetEnumerator();31
}32
}33

34
public class MainClass 35
{36
public static void Main(string [] args) 37
{38
MyCollection myCollection = new MyCollection();39
myCollection.Add("111");40
myCollection.Add("222");41
myCollection.Add("333");42
myCollection.Add("444");43
myCollection.Add("555");44

45
foreach (object i in myCollection) 46
{47
Console.WriteLine(i.ToString());48
} 49
Console.ReadLine();50
}51
}52



浙公网安备 33010602011771号