配列とList<T>

配列は「インスタンス生成時に格納できる要素数が決まり、後から変更ができない」、
List<T> は「インタスタンス生成後に、要素を追加、挿入、削除を行える」。

配列、List<T> ともに、IEnumerable<T> インターフェースを持つ。

IEnumerable<T> 型の連続したデータをシーケンスという。
オブジェクトの総称は コレクション と呼び、扱う。

入力

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Linq;      
  4                         
  5 namespace Program       
  6 {       
 13     class Program  
 14     {              
 15         static void Main(string[] args)
 16         {          
 25             var numbers = Enumerable.Repeat(-1, 20).ToList(); // List<T>を同じ値で埋める
 26             var strings = Enumerable.Repeat("(unknown)", 12).ToArray(); // 配列を同じ値で埋める
 27             var array = Enumerable.Range(1, 20).ToArray(); // 配列に連続した値を設定する
 28                              
 29             Console.WriteLine(numbers);
 30             Console.WriteLine(strings);
 31             Console.WriteLine(array);
 32         }                    
 33     }                        
 34 }

出力

System.Collections.Generic.List`1[System.Int32]
System.String[]
System.Int32[]

参考:
実戦で役立つ C#プログラミングのイディオム/定石&パターン:書籍案内|技術評論社