首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

实现IEnumerable

您好!您的问题是关于实现 IEnumerable 接口的。IEnumerable 是 C# 中的一个接口,它允许对集合进行迭代。IEnumerable 是一个泛型接口,其中 T 是集合中元素的类型。

在 C# 中,实现 IEnumerable 接口的类型可以使用 foreach 循环进行迭代。要实现 IEnumerable 接口,需要实现 GetEnumerator() 方法,该方法返回一个 IEnumerator 对象。IEnumerator 接口包含 Current 属性和 MoveNext() 方法。Current 属性返回集合中的当前元素,MoveNext() 方法将迭代器移动到下一个元素。

以下是一个简单的实现 IEnumerable 接口的示例:

代码语言:csharp
复制
using System;
using System.Collections;
using System.Collections.Generic;

public class CustomEnumerable : IEnumerable<int>
{
    private int[] _array = { 1, 2, 3, 4, 5 };

    public IEnumerator<int> GetEnumerator()
    {
        for (int i = 0; i < _array.Length; i++)
        {
            yield return _array[i];
        }
    }

    IEnumerator IEnumerable.GetEnumerator()
    {
        return GetEnumerator();
    }
}

class Program
{
    static void Main(string[] args)
    {
        CustomEnumerable customEnumerable = new CustomEnumerable();

        foreach (int item in customEnumerable)
        {
            Console.WriteLine(item);
        }
    }
}

在上面的示例中,我们定义了一个名为 CustomEnumerable 的类,该类实现了 IEnumerable<int> 接口。GetEnumerator() 方法使用 yield return 语句返回一个迭代器,该迭代器可以迭代 _array 数组中的元素。在 Main() 方法中,我们创建了一个 CustomEnumerable 对象,并使用 foreach 循环迭代其中的元素。

总之,实现 IEnumerable 接口可以使您的类型使用 foreach 循环进行迭代。要实现 IEnumerable 接口,需要实现 GetEnumerator() 方法,该方法返回一个 IEnumerator 对象。IEnumerator 接口包含 Current 属性和 MoveNext() 方法,用于访问和移动集合中的元素。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的结果

领券