配列の宣言と初期化

配列の宣言

変数の宣言は次のような形式で行いました。

配列も同様の形式で宣言できます。

配列の型は

構成要素の型の後ろに [ ] をつけたものです。

例

double型の配列 x の宣言

int型の配列 aとb の宣言

double[] x;
int[] a, b;

配列の割り当て

配列の割り当て(作成)はnewを使って行います。

newは新しいオブジェクトを作るときに使います。

例

double型の配列 x に1000個からなる配列を割り当てる。

double[] x;
x = new double[ 1000];

int型の配列 a に100個からなる配列を、b に200個からなる配列を割り当てる。

int[] a, b;
a = new int[ 100];
b = new int[ 200];

例

配列の宣言により、変数 a の値を保持する領域が用意される。

int[] a;

new により指定の大きさの配列が作られる。

new int[100];

作られた配列オブジェクトのアドレスを変数aに代入することで、aを用いて配列を利用できるようになる。

int[] a; a = new int[100];

宣言文と実行文

int[] a; は宣言文です。

a = new int[100]; は実行文です。

配列を実際に割り当てるのは実行文の方です。 したがって、配列の大きさは実行時に指定できることが分かります。

配列の宣言と初期化

配列の宣言と割り当てを一度に行う構文もあります。

例

double[] x = new double[ 1000];

配列の初期値

配列の初期値は次のように記述して指定できます。

int[] k = { 5, 3, 10, 21, 2 };

この例では、大きさ５の配列が作られ、k[0]=5; k[1]=3; ... に初期化されます。

補足

配列の宣言は

int[] a;

ではなく

int a[];

と書く方法もあります。

１番目の書き方はint配列型の変数a 、 ２番目の書き方はint型aの配列 と読めます。 どちらでもかまわないのですが、１番目の方がなんとなくオブジェクトっぽくて、 説明の図とあっているように見えませんか。