位置:首頁 > 軟件操作教程 > 編程開發(fā) > C# > 問題詳情

C# 迭代器和集合

提問人:劉團圓發(fā)布時間: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; }

    }

}

可在這段代碼中添加如下的簡單迭代器,以便執(zhí)行預(yù)期的操作:

public new IEnumerator GetEnumerator <)

{

    foreach (object animal in Dictionary.Values) 

    yield return (Animal)animal;

}

現(xiàn)在可使用下面的代碼來迭代集合中的Animal對象:

foreach (Animal myAnimal in animalCollection)

{

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

}

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部