‫お帰りなさい｡
‫このビデオでは､ もう1度i列挙体について見ていきます｡
‫これは､ ai列挙体をパラメータとしてメソッドに渡す方法を見る別のデモです｡
‫なぜなら､ オブジェクト指向プログラミングにおける継承と同じように､ 子クラスのインスタンスを､
‫例えばメソッド呼び出しの際に親クラスと同じようにパラメータとして渡すことができるからです｡
‫前回のビデオで見たように､ AI enumerableインタフェースを実装したコレクションを扱う場合にも同様のことが起こります｡
‫なるほど｡
‫では､ ここで新しいメソッドを作って､ 実際にAI列挙可能なコレクションをパラメータとして受け取ってみましょう｡
‫だから､ ここに書いておこうと思う｡
‫そして､ ご覧の通り､ AI enumerableを使用しています｡ これはもちろん､ ここにあるgeneric collections名前空間を必要とすることになります｡
‫わかりました｡
‫これで､ このファイル全体に使用することができます｡
‫そして､ 私が持つことになるのは､ 基本的に､ あらゆるタイプのコレクションに数値の合計を保存するsumです｡
‫だから､ 私たちのどんなコレクションにも｡
‫そして､ コレクションの各項目を調べて､ それを合計してsumに入れるのです｡
‫つまり､ 基本的にはコレクションの中にあるすべての値を合計して､
‫その結果をコンソールに書き出すだけです｡
‫コンソール・ライト・サムがそうで､ それから和がそうです｡
‫なるほど｡
‫このコレクションには､ そんな思いが込められているんですね｡
‫さて､ クールなことに､ I enumerable インターフェースを実装している任意のタイプのコレクションを渡すことができます｡
‫つまり､ リストや配列を渡すことができるのです｡
‫だから､ ここにはたくさんのオプションがあるんだ｡
‫では､ 実際にそれを活用してみましょう｡
‫そこで､ 私のメインメソッドのリスト､ ナンバーリストにこのようなリストを設定します｡
‫つまり､ これは単なる数字の羅列になるわけです｡
‫次に､ 同じことを配列でやってみます｡
‫ということで､ 整数の配列を作ってみます｡
‫そして､ この右側の行を使って新しい行を作成し､ メソッドcollectionを呼び出して､
‫数字リスト（8､ 6､ 2の数字でいっぱいのリスト）を渡します｡
‫これを渡してプログラムを実行すると､ 8＋6＋2の結果が表示され､ 16になるわけです｡
‫わかりました｡
‫そして､ もちろん､ 数字配列でも同じことができます｡
‫そこで､ ここでは全く別の型である数列を渡しています｡
‫そうだろ？
‫つまり､ これはリストではなく､ 配列であり､ それを渡すだけなのです｡
‫そして､ 実行してみれば､ 同じように動作することがわかる｡
‫だから､ あるは12で､ 1＋7＋1＋3の和だと言うことになる｡
‫これが､ 汎用型I列挙型を使用する利点です｡
‫つまり､ 基本的にはリストの基本型ではないことがおわかりいただけたと思います｡
‫しかし､ リストクラスはI enumerableを実装しています｡
‫そこで､ リストに移動してみると､ ご覧のように､ 汎用および非汎用オプションのI列挙の指示にしたがっていることがわかります｡
‫それが､ ここでのクールな点です｡
‫このビデオはこれで終わりですが､ i列挙型のルールで何ができるのか､
‫ある程度理解していただけたかと思います｡
‫そして､ I列挙可能なコレクション型に出会うたびに､ プログラミングでかなり使用されているので､
‫混乱することはないでしょう｡
‫というわけで､ このビデオを楽しんでいただけたでしょうか？
‫次回作でお会いしましょう｡