C#IEnumerableインターフェイス

?Q:配列は、ArrayListのとHasttableこれらのコレクションは、それを横断する直接のforeach使用することができますなぜ便利なの収集、および非常にシンプルですが、私は理解していませんか 私はそれを行う方法を、私はクラスのセットを定義したと思いますか?
回答:これはあなたがArrayListのとHasttable定義は見ることができます表示する場合、彼らは達成している、良い質問です
foreachのを使用するための鍵となるインタフェース、。
アレイを通して見て:
 
 
私たちのカスタムクラスのであれば、それを横断する配列と同じにすることはできませんか?
試してみましょう:
 
 
 
業績エラー:
 
 
トラバーサルの原則は:、IEnmuerableインタフェースを達成するための必要性を横断するカスタム・コレクション・クラスでのforeachを使用します。
(1)IEnmuerable列挙子インタフェースは、コレクションのIEnumeratorを介して戻りループを有しているので
 
 
 
(2)列挙IEnumeratorインターフェイス
 
foreachのを使用する場合は、IEnumeratorを列挙子が機能ルックアップデータを達成するために、次のコードにコンパイルされます(外の世界へのforeach構文です)
 
 
 
 
特定の実装:
(1)クラス部門を追加
その後、クラスがIEnumeratorインターフェイスを継承してみましょう
(2)にカーソルを位置決めします
、そして、代替+シフト+ F10を押して選択します
最初の項目を選択します
 
 
(3)この意志
 
(4)このように
 
(5)クラスは、foreachので反復することができるように。
 
 
 
 
ICollectionを:ここではSystem.Colliction名前空間内の別のインターフェイスを見てみます。彼は、IEnumerableを継承しています。
 

おすすめ

転載: www.cnblogs.com/schangxiang/p/11229474.html