配列の要素数は「配列変数.length」で取得できます。
int[] a = {33, 66, 99}; int len = a.length; // 変数lenに、配列の要素数3が入る
ループ処理と配列は、セットと言ってよいほど一緒に使います。ループ処理で配列の各要素にアクセスして、値を書き換えたり取得したりします。
具体的なやり方としては、ループ処理のカウンタになる変数に0を設定して、その変数の値を1ずつ増やしていきます。そして、配列の添え字にカウンタの数値を入れ、配列を1つずつ利用します。
以下、その処理の実例を示します。
int[] a = new int[10]; // 配列への値の書き込み for (int i = 0; i < a.length; i ++) { a[i] = i * i; } // 配列の値の利用 for (int i = 0; i < a.length; i ++) { System.out.println("要素 " + i + " の値は " + a[i]); }
要素 0 の値は 0 要素 1 の値は 1 要素 2 の値は 4 要素 3 の値は 9 要素 4 の値は 16 要素 5 の値は 25 要素 6 の値は 36 要素 7 の値は 49 要素 8 の値は 64 要素 9 の値は 81
値を1ずつ加算する「++(プラス2つ)」演算子の処理は「インクリメント」と呼ばれます。また、値を1ずつ減算する「--(マイナス2つ)」演算子の処理は、「デクリメント」と呼ばれます。これらの話は演算子の項で行いました。
インクリメントとデクリメントは、配列のループ処理で主に使われます。インクリメントは、配列を「先頭から順番に」参照したい場合、デクリメントは、配列を「末尾から順番に」参照したい場合に使用されます。
int[] a = {33, 66, 99}; for (int i = 0; i < a.length; i ++) { System.out.println("要素 " + i + " の値は " + a[i]); }
要素 0 の値は 33 要素 1 の値は 66 要素 2 の値は 99
int[] a = {33, 66, 99}; for (int i = a.length - 1; i >= 0; i --) { System.out.println("要素 " + i + " の値は " + a[i]); }
要素 2 の値は 99 要素 1 の値は 66 要素 0 の値は 33