Javaの配列について
はじめに
本稿ではJavaの配列の宣言から参照方法、多次元配列について紹介していきます。サンプルコードと共に紹介していくので、余裕があればコードを実行して動きを確認してみると理解が深まっていくかと思います。
配列の宣言
配列とは、同じ型の複数のデータを一つの変数でまとめて扱うことができます。例えば、学校のクラス全員のテストの結果を配列を使わずに宣言すると以下のようになります。
int score1, score2, score3, score4, score5, …, score40;
このように人数分の変数を宣言していくとなると、コードがとても見辛いものになってしまいます。一方、以下のように配列を使って宣言することで一つの変数でまとめることができます。
int score[] = new int[40];
配列の参照
配列の値を参照するには以下のように記述することで出来ます。配列の添字は0から始めるの注意が必要です。
int score[] = new int[5];
score[0] = 75;
score[1] = 68;
score[2] = 89;
score[3] = 74;
score[4] = 42;
配列の活用例①(合計を求める)
配列を使用せずに変数を宣言し平均を求めた場合と配列を使用して変数を宣言し平均を求めた場合のコードを比較していきます。
int score1, score2, score3, score4, score5;
int sum = 0;
score1 = 56;
score2 = 78;
score3 = 89;
score4 = 45;
score5 = 91;
sum += score1;
sum += score2;
sum += score3;
sum += score4;
sum += score5;
System.out.println("5人の合計点は" + sum + "点です。");
以下は配列を使用した場合です。
int score[] = {56, 78, 89, 45, 91};
int sum = 0;
for(int i = 0; i < score.length; i++){
sum += score[i];
}
System.out.println("5人の合計点は" + sum + "点です。");
配列の活用例②(多次元配列)
ここからは二次元配列について紹介していきます。二次元配列のイメージとしては配列自体を値として考え、また別の配列の中に格納していきます。二次元配列の宣言は以下の通りです。
int score[][] = new int[2][3];
以下のコードは二次元配列の値の参照方法になります。
int score[][] = new int[2][3];
score[0][0] = 42;
score[0][1] = 58;
score[0][2] = 67;
score[1][0] = 78;
score[1][1] = 89;
score[1][2] = 91;
for(int i = 0; i < score.length; i++){
for(int j = 0; j < score[i].length; j++){
System.out.println(score[i][j]);
}
}
配列の活用例③(拡張for文)
Javaでは拡張for文という方法を使用することで、配列の全ての要素に同じ処理をすることができます。拡張for文はfor文より少ない記載量でコーディングすることができる点やループ回数を考慮しないで良い点が非常に便利です。
int score[] = new int[5];
score[0] = 42;
score[1] = 58;
score[2] = 67;
score[3] = 91;
score[4] = 78;
//普通のfor文
for(int i = 0; i < score.length; i++){
System.out.println(score[i]);
}
//拡張for文
for(int result : score){
System.out.println(result);
}
また先ほど紹介した二次元配列と拡張for文を併せて使用した場合を紹介します。
int score[][] = new int[2][5];
score[0][0] = 42;
score[0][1] = 58;
score[0][2] = 67;
score[0][3] = 91;
score[0][4] = 78;
score[1][0] = 32;
score[1][1] = 48;
score[1][2] = 57;
score[1][3] = 81;
score[1][4] = 68;
//普通のfor文
for(int i = 0; i < score.length; i++){
for(int j = 0; j < score[i].length; j++){
System.out.println(score[i][j]);
}
}
//拡張for文
for(int results[] : score){
for(int result : results){
System.out.println(result);
}
}
まとめ
本稿では配列の参照方法や多次元配列について紹介してきました。配列は利用頻度も高いので、しっかりと扱えるようにしておきましょう。
本稿が皆様のお役に立てれば幸いです。最後までお読みいただきありがとうございます。