配列変数
今までのサンプルプログラムでは、data1, data2, data3.... のように、必要な数だけ変数を宣言していました。
しかし、同一種類のデータ数が多かったり、データ数がわからない場合などは、変数を多めに宣言する必要があります。プログラム自体が長くなって、修正が面倒になってきます。
このようなときに備えて、配列変数というものが用意されています。配列変数を使えば、すっきりしたプログラムを書くことができ、プログラムも短くなります。
まずは、簡単な1次元配列のプログラムを作成してみます。
データ数を指定して宣言
1次元配列を宣言するためには、()を使って、カッコの中に要素数(データ数)を指定します。
たとえば、データ数が5個の整数配列変数kakakuを宣言するときは、kakaku(4)になります。
要素数が5個の整数型配列変数 kakaku(4) を宣言すると、kakaku(0)、kakaku(1)、kakaku(2)、kakaku(3)、kakaku(4)の5つの変数が使えるようになります。
kakaku(5)と、宣言しないので注意してください。
' 要素数が5個の整数配列変数の宣言 Dim kakaku(4) As Integer
()の内の数字のことを、添え字とかインデックスと言い、添え字は0から始まります。1からではないので、気を付けてください。
要素数が10個の文字列配列変数を宣言します。
個別の配列要素は、namae(0)、namae(1)、namae(2)、.....、namae(9)の10個の要素になります。
' 要素数が10個の文字列配列変数の宣言 Dim namae(9) As String
配列変数を使ったサンプルプログラム
文字列の配列変数を使ったサンプルプログラムを作成します。
ループ処理を利用して、値を代入するので、プログラムが短くなります。ループ処理が使ってプログラムを短くできるのが、配列変数のメリットです。
ソースリストの枠内をクリックすると全選択できます。
Module Module1 Sub Main() ' 配列文字列変数の宣言 Dim str(10) As String For i As Integer = 0 To 10 ' 文字列の連結 str(i) = (i + 1) & "行目" ' 文字列の表示 Console.WriteLine(str(i)) Next End Sub End Module
実行結果は次のようになります。
配列を使わずにプログラムを書くと、個々の文字列変数に一つずつ代入することになり、プログラムも長くなります。
'配列使わないと Dim str0 As String = "1行目" Dim str1 As String = "2行目" Dim str2 As String = "3行目" Dim str3 As String = "4行目" Dim str4 As String = "5行目" ............................ ............................ Dim str10 As String = "11行目"