位置:首页 > 软件操作教程 > 编程开发 > C# > 问题详情

C# 迭代器和集合

提问人:刘团圆发布时间:2020-12-07

    将介绍迭代器如何用于迭代存储在字典类型的集合中的对象,而不必处理Dictionaryltem对象。在DictionaiyAnimals文件夹中,可以找到接下来这个项目的代码。下面是集合类Animals:

public class Animals : DictionaryBase

{

    public void Add(string newID, Animal newAnimal) =>

        Dictionary.Add(newID, newAnimal);


    public void Remove(string animallD) =>

        Dictionary.Remove(animallD);


    public Animal this[string animallD]

    {

        get { return (Animal)Dictionary[animallD]; } 

        set { Dictionary [animallD] *= value; }

    }

}

可在这段代码中添加如下的简单迭代器,以便执行预期的操作:

public new IEnumerator GetEnumerator <)

{

    foreach (object animal in Dictionary.Values) 

    yield return (Animal)animal;

}

现在可使用下面的代码来迭代集合中的Animal对象:

foreach (Animal myAnimal in animalCollection)

{

    WriteLine($"New {myAnimal.ToString()} object added to 11 + $" custom collection, Name = {myAnimal - Name}");

}

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部