黙々とC#

"In a mad world of VBA, only the mad are sane" 『VBAという名の狂った世界で狂っているというのなら私の気は確かだ』

コレクション(配列・リスト)

本記事は、Excel C# Script入門講座の1記事です。

コレクション(配列・リスト)

配列

配列とは、一つの変数に対して複数の同じ型のデータを格納する場合に使用します。

配列は、以下のようにして宣言することが出来ます。

型名[] 変数名;

また、利用にあたっては、初期化が必要です。ここでは、配列の実体を生成する(サイズを決定する)必要があります。配列のサイズは以下のようにして決定します。

変数名 = new 型名[配列の長さ]

なお、C# Script(C#3.0以降)では、以下のように型名を省略して初期化することが可能です。

var a = new[]{0, 1, 2, 3};
var b = new[]{"C#", "VBA", "VB.NET"};

また、配列の型を明示して宣言する場合には、new[] を省略することも可能です。

int[] a = {0, 1, 2, 3};

なお、配列の各要素には、以下のようにしてアクセスすることができます。

変数名[要素番号]

要素番号は「0」から始まります。例えば「var a = new string[3];」と初期化すると、要素数は「0」から「2」の「3つ」となります。配列にデータを代入する場合は、「変数名[要素番号] = データ」で代入できます。

リスト

リストは、要素を順番に保持するコレクションクラスです。動的に要素の数を増減できるという特徴があり、動的配列のように扱うことができます。

リストは、型名を指定して宣言・初期化することができます。

var 変数名 = new List<型名>();

配列のように、要素番号を指定して各要素にアクセス可能です。

var list = List<string>(){"C#", "VBA", "VB.NET"};
list[1] = "F#"; //2つ目の要素に値を設定
list.Add("PowerShell"); //要素を追加

他にもコレクションを便利に扱うためのメソッドが用意されています。詳しくはMSDNを参照して下さい。