📅  最后修改于: 2023-12-03 15:40:46.310000             🧑  作者: Mango
在 C# 中,IEnumerable 接口用于表示一组可以枚举的对象。IEnumerable 接口是通过yield关键字来枚举一组数据的。在本文中,我们将探讨如何将项目添加到 IEnumerable。
我们可以将一个对象添加到 IEnumerable 接口中,通过实现 IEnumerable 接口中的 GetEnumerator()
方法。
public IEnumerator GetEnumerator()
{
return myEnumerator();
}
在 myEnumerator()
方法中,我们可以使用 yield return 语句来 yield return 一组数据。在每次调用 MoveNext()
方法时,就会依次 yield return 一组数据。
private IEnumerator myEnumerator()
{
yield return "Item 1";
yield return "Item 2";
yield return "Item 3";
}
我们现在可以像枚举一般使用 IEnumerable 接口。
MyEnumerable myEnumerable = new MyEnumerable();
foreach (var item in myEnumerable)
{
Console.WriteLine(item);
}
输出:
Item 1
Item 2
Item 3
下面是一个例子,其中我们将一组字符串添加到 IEnumerable 接口中。
using System;
using System.Collections;
class Program
{
static void Main(string[] args)
{
MyCollection myCollection = new MyCollection();
myCollection.Add("Hello");
myCollection.Add("World");
myCollection.Add("!");
foreach (var item in myCollection)
{
Console.WriteLine(item);
}
}
}
class MyCollection : IEnumerable
{
private ArrayList values = new ArrayList();
public void Add(string value)
{
values.Add(value);
}
public IEnumerator GetEnumerator()
{
return myEnumerator();
}
private IEnumerator myEnumerator()
{
foreach (string str in values)
{
yield return str;
}
}
}
观察输出:
Hello
World
!
现在你已经知道如何添加到 IEnumerable 中了。要继续探索IEnumerable 和 IEnumerator 接口,以及如何使用它们,请查阅微软官方文档。