前回は、do-while文と拡張for文について学習しました。
拡張for文は配列の要素を順番に取り出すためによく使用されます。
今回は、その配列について詳しく見ていきましょう。
配列とは、同じ型のデータをまとめて管理する仕組みです。
例えば、3人のテストの点数を管理する場合を考えてみましょう。
int score1 = 80;
int score2 = 90;
int score3 = 70;
人数が増えるたびに変数を作るのは大変です。
int[] scores = {80, 90, 70};
これで複数の値を1つの変数で管理できます。
int[] scores = {80, 90, 70};
配列を作成しながら値を設定できます。
int[] scores = new int[3];
3つ分のデータを保存できる配列を作成します。
値を後から代入することもできます。
scores[0] = 80;
scores[1] = 90;
scores[2] = 70;
配列の中に入っている1つ1つのデータを「要素」と呼びます。
int[] scores = {80, 90, 70};
配列の要素には番号が付いています。
この番号をインデックスと呼びます。
値 80 90 70
インデックス 0 1 2
Javaの配列は0から始まることに注意しましょう。
int[] scores = {80, 90, 70};
System.out.println(scores[0]);
System.out.println(scores[1]);
System.out.println(scores[2]);
80
90
70
配列はfor文と組み合わせて使うことが非常に多いです。
int[] scores = {80, 90, 70};
for (int i = 0; i < scores.length; i++) {
System.out.println(scores[i]);
}
80
90
70
lengthは配列の要素数を取得するための機能です。
前回学習した拡張for文を使うと、さらに簡潔に記述できます。
int[] scores = {80, 90, 70};
for (int score : scores) {
System.out.println(score);
}
80
90
70
int[] scores = {80, 90, 70};
System.out.println(scores[3]);
インデックスは0~2までしか存在しません。
実行するとエラーになります。
for (int i = 0; i <= scores.length; i++) {
System.out.println(scores[i]);
}
最後に存在しない要素へアクセスしてしまいます。
通常は i < scores.length と書きます。
次回は、メソッドについて解説します。