コレクションとデータ構造体

更新 : 2007 年 11 月

密接に関連するデータは、1 つのコレクションにグループ化すると、より効率的に処理できます。グループ化により、個々のオブジェクトを処理するために別々のコードを記述する代わりに、同じコードを使用して 1 つのコレクション内のすべての要素を処理できます。

コレクションを管理するには、Array クラスと System.Collections クラスを使用して、コレクション内の個々の要素または任意の範囲の要素を追加、削除、および変更します。また、コレクション全体を別のコレクションにコピーすることもできます。

一部の Collections クラスには並べ替え機能があり、ほとんどの Collections クラスはインデックス付けされます。メモリ管理は自動的に処理されるため、コレクションの容量も必要に応じて拡張されます。同期によって、コレクションのメンバへのスレッド セーフなアクセスも実現されます。一部の Collections クラスでは、コレクションを読み取り専用または固定サイズにするためのラッパーを作成できます。すべての Collections クラスは、その要素を簡単に反復処理できるように、独自の列挙子を作成できます。

.NET Framework version 2.0 では、ジェネリック コレクション クラスに新機能が用意され、厳密に型指定されたコレクションを簡単に作成できます。System.Collections.Generic 名前空間と System.Collections.ObjectModel 名前空間を参照してください。

LINQ to Objects 機能を使用すると、オブジェクト型が IEnumerable または IEnumerable<T> を実装している限り、LINQ クエリを使ってメモリ内オブジェクトにアクセスできます。LINQ クエリはデータ アクセス用の一般的なパターンです。通常、これは標準の foreach ループよりも簡潔で読みやすく、フィルタ処理、並べ替え、およびグループ化機能を備えています。さらに、LINQ クエリによってパフォーマンスを向上させることができます。詳細については、「LINQ to Objects」を参照してください。

このセクションの内容

参照

  • Array
    配列の作成、操作、検索、および並べ替えに使用するメソッドを提供し、共通言語ランタイムのすべての配列の基本クラスになることができる Array クラスについて説明します。

  • System.Collections
    各種のオブジェクトのコレクションを定義するインターフェイスとクラスを含む System.Collections 名前空間のリファレンス ドキュメントを提供します。

  • System.Collections.Generic
    ジェネリック コレクションを定義するインターフェイスとクラスを含む System.Collections.Generic 名前空間のリファレンス ドキュメントを提供します。

  • System.Collections.Specialized
    厳密に型指定された専用コレクションを含む System.Collections.Specialized 名前空間のリファレンス ドキュメントを提供します。