ここではSystem.Collections.Generic名前空間にある、ジェネリックなコレクションを見ていきます。 非ジェネリックコレクションとジェネリックコレクションの大きな違いは、主に以下の二点です。

  1. 厳密に型定義されている (タイプセーフである)
  2. objectへのキャストが行われない (値型の場合はボックス化/ボックス化解除が発生しない)

System.Collections.Generic名前空間には、System.Collections名前空間で提供される非ジェネリックコレクションから機能が強化されたジェネリックコレクションが用意されています。

なお、コレクションのソートについては基本型のソートと昇順・降順でのソート複合型のソート・複数キーでのソートで詳しく解説しています。 また、非ジェネリックコレクションについては非ジェネリックコレクションで解説しています。