== 配列 == 配列の要素の参照や要素への値の代入などでの要素の指定方法はCと同じです。 {{{ a[0] = 1; a[1] = a[0] + 2; }}} 配列の宣言と使い始めに必要な処理は異なります。 {{{#!java int[] a; a = new int[100]; for (int i = 0; i < a.length; i++) a[i] = 0; }}} 1行目の変数宣言 int[ ] a; により、変数aの場所が用意される。 a の型は int[ ] で int型の配列であるが、変数aのために用意されるのは参照型の値が入る箱1つだけである。 {{attachment:hairetu1.png}} 2行目の new int[100] により、int型のデータが100個並んだオブジェクトが作られる。 {{attachment:hairetu2.png}} それを a に代入することで、aを使って配列の各要素を参照できるようになる。 {{attachment:hairetu3.png}} 3~4行目では配列の要素に0を代入している。 aが参照している配列の大きさは a.length で得ることができ、繰り返しの中で利用している。 変数aの定義と配列オブジェクトの作成が別々になっていることに注意してください。 ---- 配列の宣言は {{{ int[] a; }}} ではなく {{{ int a[]; }}} と書く方法もあります。 1番目の書き方は'''int配列型の変数a'''、 2番目の書き方は'''int型aの配列''' と読めます。 どちらでもかまわないのですが、1番目の方がなんとなくオブジェクトっぽくて、 説明の図とあっているように見えませんか。