ICollection

ICollectionは、コレクションの定義を満たすための必須の要件が定義されているインターフェース。

ICollection Interface (System.Collections) | Microsoft Docs
コレクション概要 - アルゴリズムとデータ構造 | ++C++; // 未確認飛行 C
C# のコレクション使用法のガイドライン その2 コレクション - Qiita

といっても、同期とコピーのインターフェースはめんどいので、今回まともに実装するのはサイズであるCountぐらいかな。

コンストラクタで内部でint型配列を生成しておいて、countに指定されたサイズをセットしておく。
また、各要素に0からcount - 1まで値をセットしておく。

サイズを最初に指定するコレクションTestCollection。

Count = 5
i = 0
i = 1
i = 2
i = 3
i = 4
続行するには何かキーを押してください . . .

foreachは機能するし、countの取得専用プロパティCountも機能している。

Sample/dotnet/ICollection/ICollection/src/ICollection_ at master · bg1bgst333/Sample · GitHub