配列(Array)の特徴
サイズ固定
宣言した時点で要素数が決まります。あとから増減はできません。
int[] numbers = new int[3]; // 要素数3に固定
高速アクセス
インデックス(numbers[0])でアクセスするときはとても速いです。
多次元配列が使える
行列や画像データなどをそのまま表現できます。
向いている場面
- データ数が最初から決まっている
- パフォーマンスを極力重視する
List の特徴
サイズ可変
Add や Remove で自由に追加・削除できます。
List<int> numbers = new List<int>();
numbers.Add(10);
numbers.Add(20);
便利なメソッドが豊富
Contains, Find, Sort など、配列では自分で実装しないといけない機能が揃っています。
向いている場面
- データ数が変わる可能性がある
- 追加・削除や検索をよく使う
どっちを使うべき?
迷ったら List を使えばOK
業務システムやアプリ開発では「データ数が変わる」ことがほとんどだからです。
List は可変で柔軟、メソッドも豊富なので実装も読みやすくなります。
一方で、配列はこんなときに活躍します。
- データが完全に固定(例:曜日、月、選択肢など)
- 高速処理や低レベルな処理が必要(例:画像処理、ゲームのフレーム処理)
まとめ
- 配列 → 固定長、軽量で高速
- List → 可変長、便利で柔軟
- 実務では 9割 List、特殊な場合に配列 が王道