コレクション (collection)

コレクションとは、配列を補足するデータ構造です。

System.Collections名前空間

コレクションに関する型は、System.Collections名前空間で宣言されています。

コレクション インターフェイス (Collection interface)

以下のインターフェイスで、コレクションの列挙、データの格納や作成のための標準的な方法が提供されます。

コレクション クラス (Collection Class)

これらはジェネリックではない古いクラスであるため、型の安全性とパフォーマンスを考えるならば、新しいジェネリックなコレクション クラスを使用すべきです。

  • ArrayList
  • BitArray
  • Hashtable
  • Queue
  • SortedList
  • Stack
  • StringCollection

Hashtable

反復子 (Iterators)

yieldキーワード

反復子を定義できます。

yield return expression;
yield break;

foreachステートメント

int[] p = { 1, 2, 3 };
foreach (int x in p)
{
    Console.Write(x);
}

foreachで処理しているコレクションは、そのブロック内で項目の追加や削除はできません。foreach (Visual Basic では For Each) ブロック内のステートメントによって、反復処理中のコレクションが変更される - 例外のトラブルシューティング : System.InvalidOperationException | MSDN

List<int> list = new List<int>(new int[] { 1, 2, 3 });
foreach (int item in list) // 2回目のループで、System.InvalidOperationException
{
    list.Remove(item);
}

参考

参考書

MSDN (Microsoft Developer Network) から検索