C# 使用 foreach 循环遍历类成员,包括字典成员
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 循环遍历一个类的所有成员,包括字典成员。这为我们提供了更方便的方式来访问和操作类成员。
原文地址: https://www.cveoy.top/t/topic/oDEE 著作权归作者所有。请勿转载和采集!