iterterterter iteratorは、
、つまりienumeratorinterfaceで簡単に実装できます。たとえば、student
クラスがあり、今度はstudentCollectionをカプセル化したいとします。コードは次のようになります。 Studentクラス: StudentCollection クラス:
1つのフィールド、つまり
studentListのみを持つ非常に単純なカプセル化、の型はリスト<学生>、実装 IenumeratorInterface コードには studentList
を使用しました。このクラスはこのインターフェースを実装しているため、そのまま使用してください。このようにして、
studentCollection foreachを走査できます: コードの説明: A studentCollection オブジェクトを作成し、初期化子を使用します各 student オブジェクト
を初期化します。 2. foreachを使用して、各
Studentを走査します。 3.u
、プロンプトボックス表示をポップアップ表示します
Ienumeratorインターフェースを実装する他の方法はありますか?答えは「はい」です。コードは次のとおりです。 インデックス シンボルとインデックス シンボルのオーバーロードについて: 注意深い読者は、 でそれを発見したかもしれません。 学生コレクション クラスでは、2 つのインデックス シンボルを定義しました: ////インデックスによってアクセス ////A学生名でアクセスインデックス再読み込みメカニズムにより、カプセル化がより柔軟かつ強力になります。 上記は、C# インデックスとイテレーターのサンプル コードの詳細な説明です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) を参照してください。
public IEnumerator GetEnumerator()
{
foreach (Student s in studentList)
{
yield return s;////使用yield关键字实现迭代器
}
}
public Student this[int index]
{
get
{
return studentList[index];
}
}