Visual Basic の配列の概要

更新 : 2007 年 11 月

配列は、学校の各学年の生徒の数など、互いに論理的に関連する一連の値です。

配列を使うと、これらの関連する値を同じ名前で参照できます。配列の各要素を区別するには、インデックスまたは添字と呼ばれる番号を使います。個々の値は、配列の要素と呼ばれます。これは、インデックス 0 から最も大きいインデックス値まで連続しています。

次の例では、学校の各学年の生徒の数を保持するために、配列変数を宣言しています。

Dim students(6) As Integer

上の例の students 配列には、7 つの要素が含まれています。要素のインデックスの範囲は 0 から 6 までです。7 つの異なる変数を宣言するよりも、この配列の方がより簡単です。

students 配列を次の図に示します。配列の各要素は、次のとおりです。

  • 要素のインデックスは、学年を表します (インデックス 0 は幼稚園を表します)。

  • 要素に含まれている値は、その学年の生徒の数を表します。

"生徒" 配列の要素

生徒数を示す配列の図

次の例は、students 配列の先頭の要素、2 番目の要素、および最後の要素を参照する方法を示します。

Dim kindergarten As Integer = students(0)
Dim firstGrade As Integer = students(1)
Dim sixthGrade As Integer = students(6)
MsgBox("Students in kindergarten = " & CStr(kindergarten))
MsgBox("Students in first grade = " & CStr(firstGrade))
MsgBox("Students in sixth grade = " & CStr(sixthGrade))

インデックスを持たない配列変数名だけを使用して、配列全体を参照できます。

配列の型および他の型

データ型

すべての配列にデータ型がありますが、要素のデータ型とは同じではありません。たとえば、前の例の students 配列は Integer() 型であり、その要素のそれぞれは Integer 型です。Integer() の表記は、Integer 要素の配列を意味します。詳細については、「Visual Basic における配列データ型」を参照してください。

すべての配列は、System.Array クラスから継承しています。また、Array 型として変数を宣言できますが、Array 型の配列は作成できません。また、ReDim ステートメント (Visual Basic) は、Array 型として宣言された変数上では使用できません。これらの理由やタイプ セーフにより、すべての配列を、前の例の Integer などの特定の型として宣言することをお勧めします。

配列の次元

前の例の students 配列では、1 つのインデックスが使用されており、これを 1 次元と言います。複数のインデックスまたは添字が使用されている配列は、多次元と呼ばれます。

他の種類の配列とは、要素として他の配列を保持している配列です。これは、配列の配列またはジャグ配列と呼ばれます。ジャグ配列およびその要素は、1 次元または多次元のいずれかになることができます。

対照的な型

配列とは対照的に、変数には、スカラ変数と呼ばれる単一の値が含まれています。

配列は、コレクションとは異なります。詳細については、「配列の代わりとしてのコレクション」を参照してください。

参照

処理手順

方法 : 配列変数を宣言する

方法 : 配列を作成する

方法 : 配列変数を初期化する

配列のトラブルシューティング

概念

Visual Basic における配列の次元

Visual Basic における多次元配列

Visual Basic におけるジャグ配列

Visual Basic における配列データ型

その他の技術情報

Visual Basic における配列