C# コレクション完全マスター:スタック、キュー、リスト、ハッシュテーブル
コレクション クラスは、データの格納と取得に特化したクラスです。これらのクラスはスタック、キュー、リスト、ハッシュテーブルをサポートしています。ほとんどのコレクション クラスは共通のインターフェイスを実装しています。
コレクション クラスは、要素への動的なメモリ割り当てや、インデックスによるアイテム リストへのアクセスなど、さまざまな目的に利用されます。これらのクラスは、C# におけるすべてのデータ型の基底クラスである Object クラスのオブジェクト コレクションを作成します。
主要なコレクション クラスと用途
以下は System.Collections 名前空間でよく使用される代表的なクラスです。
| 番号 | クラスと説明・用途 |
|---|---|
| 1 | ArrayList
インデックスによって個別にアクセスできる、オブジェクトの順序付きコレクションを表します。 配列の代替として機能しますが、配列とは異なり、指定した位置(インデックス)にアイテムを追加・削除でき、配列が自動的にリサイズされます。また、動的メモリ割り当て、アイテムの追加・検索・並べ替えも可能です。 |
| 2 | Hashtable
キーを使用してコレクション内の要素にアクセスします。 キーを使って要素にアクセスする必要があり、有用なキー値を特定できる場合に使用します。ハッシュテーブルの各アイテムは キー/値 の組み合わせを持ち、キーを使ってコレクション内のアイテムにアクセスします。 |
| 3 | SortedList
キーとインデックスの両方を使ってリスト内のアイテムにアクセスします。 配列とハッシュテーブルを組み合わせたような構造です。キーまたはインデックスでアクセスできるアイテムのリストを保持します。インデックスでアクセスすれば ArrayList のように、キーでアクセスすれば Hashtable のように振る舞います。アイテムのコレクションは常にキー値でソートされます。 |
| 4 | Stack
オブジェクトの後入れ先出し(LIFO)コレクションを表します。 最後に追加されたアイテムから順に取り出す(LIFO)アクセスが必要な場合に使用します。アイテムを追加することをプッシュ(push)、削除することをポップ(pop)と呼びます。 |
| 5 | Queue
オブジェクトの先入れ先出し(FIFO)コレクションを表します。 最初に追加されたアイテムから順に取り出す(FIFO)アクセスが必要な場合に使用します。アイテムを追加することをエンキュー(enqueue)、削除することをデキュー(dequeue)と呼びます。 |
| 6 | BitArray
値 1 と 0 を使用したバイナリ表現の配列を表します。 ビットを格納する必要があるが、ビット数が事前にわからない場合に使用します。BitArray コレクションのアイテムには、0 から始まる整数インデックスでアクセスできます。 |
C言語
- 製造業者が実践すべき4つの実証済みマーケティング戦術
- 製造業におけるデータ収集フォーム・チェックリストのデジタル化で効率化を解き放つ
- OSHA検査前に確認すべき必須安全チェックリスト項目
- 遠心ポンプ分解後の重要チェックポイント
- MIT開発ロボット「ディガーフィンガー」触覚センサで埋設物体検知、砂利・砂中を掘削探査
- 産業データ収集で「文脈」が洞察を導く理由
- C#コレクション実践チュートリアル:実例で学ぶ柔軟なデータ管理
- Python collections.Counter:効率的なカウント、更新、演算操作
- Javaコレクションフレームワーク完全ガイド: インターフェース・実装クラス・アルゴリズム・イテレータ・Comparator
- Java 10のガベージコレクターインターフェースとG1並列フルGCでメモリ管理を効率化
- Java 9コレクションファクトリメソッド:不変List、Set、Mapを簡潔に作成