C# 使用 foreach 循环遍历类成员,包括字典成员

在 C# 中,我们可以通过实现 IEnumerable 接口,并使用 foreach 循环来遍历一个类的所有成员,包括字典成员。

实现 IEnumerable 接口

我们可以通过实现 IEnumerable 接口并重写 GetEnumerator 方法来实现该功能。在 GetEnumerator 方法中,我们可以返回一个迭代器,该迭代器首先遍历字典成员,然后遍历其他成员。

以下代码展示了如何实现 IEnumerable 接口,并使用 foreach 循环遍历一个包含字典成员的类:

public class MyClass : IEnumerable
{
    private Dictionary<string, string> myDict = new Dictionary<string, string>();
    private string myString = 'Hello World';
    private int myInt = 123;

    public MyClass()
    {
        myDict.Add('key1', 'value1');
        myDict.Add('key2', 'value2');
    }

    public IEnumerator GetEnumerator()
    {
        foreach (KeyValuePair<string, string> kvp in myDict)
        {
            yield return kvp;
        }
        yield return myString;
        yield return myInt;
    }
}

使用 foreach 循环遍历

以下代码展示了如何使用 foreach 循环遍历 MyClass 对象:

MyClass myObj = new MyClass();
foreach (object obj in myObj)
{
    Console.WriteLine(obj);
}

输出结果

运行以上代码,输出结果如下:

key1=value1
key2=value2
Hello World
123

总结:

通过实现 IEnumerable 接口并重写 GetEnumerator 方法,我们可以使用 foreach 循环遍历一个类的所有成员,包括字典成员。这为我们提供了更方便的方式来访问和操作类成员。

C# 使用 foreach 循环遍历类成员,包括字典成员

原文地址: https://www.cveoy.top/t/topic/oDEE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录