前へ | 目次 | 次へ

.NET:基礎 > 言語構造:配列


配列


配列の宣言

【C#2003〜】
// 宣言&インスタンス化。
// データ型[] 変数 = new データ型[要素数];
int[] a = new int[2];

// 要素数を指定せずに宣言。(実体なし)
// ⇒ newで実体化
// データ型[] 変数;
int[] a;

// 初期値を設定して宣言。
// データ型[] 配列 = {要素1 [,要素2 …]};
int[] c = {1, 2};




【VB2003〜】
' 要素数を指定して宣言。
' Dim 配列(境界上限値) As データ型
Dim a(1) As Integer

' 要素数を指定せずに宣言。(実体なし)
' ⇒ ReDimで実体化
' Dim 配列() As データ型
Dim b() As Integer

' 初期値を設定して宣言。
' Dim 配列() As データ型 = {要素1 [,要素2 …]}
Dim c(1) As Integer = {1, 2}

' 要素数を再定義(配列は事前に宣言されていること)
' ReDim [Preserve] 配列(境界上限値) As データ型
ReDim b(1) As Integer
(言語による配列の扱い方の違い)
項目|言語 C# VB.NET (VB6.0)
実体定義 New(インスタンス生成) 要素を含めて宣言, ReDim 要素を含めて宣言, ReDim
宣言時の添え字 要素数。(上限値-1) 要素数-1。(上限値) 要素数-1。(上限値)
境界値(Index)下限値 変更不可。(0固定) 変更不可。(0固定) 宣言時に指定可能。
境界値(Index)上限値 要素数-1。(変更不可) 要素数-1。(変更可) 要素数-1。(変更可)

配列の操作


配列の要素数を動的に変更する

【C#2003〜】
int a[] = new a[2];
a[0] = 1;
a[1] = 2;

// tmpに退避。
int tmp[] = a;

// aを再定義。
a = new int[3];

// tmpから退避値をコピー&追加要素の設定。
tmp.CopyTo(a, 0);
a[2] = 3;
【VB2003〜】
Dim a(1) As Integer
a(0) = 1
a(1) = 2

' 元の状態を保持したまま(Preserve)
' 要素数を変更&追加要素の設定。
Redim Preserve a(2)
a(2) = 3






-

引数に直接配列を定義して設定する

【C#2003〜】
string.Format("{0},{1}", New String[] {"1", "2"})
【VB2003〜】
String.Format("{0},{1}", New String() {"1", "2"})


前へ | 目次 | 次へ
inserted by FC2 system