■配列(array)って何?
・イメージとしては、変数という箱が複数くっついたもので、
その分だけ値を入れておけるようになった箱の集まりのようなもの
・最も基本的なデータ構造の一つで、ほとんどのプログラミング言語に存在するよ
・単純に複数の変数(データ)を連続的に並べたデータ構造で、
複数の要素(値)の集合を格納・管理するのに用いられるよ
→各それぞれの変数(データ)をその配列の「要素」と言うよ
■配列のメリット
私のような初学者だと、ふと「普通に変数じゃダメなの?」と疑問に思うときがある。
そこで配列のメリットを調べてみた。
A.概要
メリットは、変更や拡張が容易になること。
配列を用いることで、
・変数をいくつも用意する手間がかからない
・添え字演算子による統一的なアクセスおよび一括処理が可能
・処理すべきデータ個数が増減したときにも対応しやすくなる
B.詳細
配列を使わない方法では、次のように個別に用意する例がある。
int score1;
int score2;
int score3;
int score4;
int score5;
int score6;
// 例えば標準入力経由で各生徒の得点を各変数に読み込んだとする。
double mean = (double)(score1 + score2 + score3 + score4 + score5 + score6) / 6;
だが、この方法では手間がかかるし、生徒数が増減したときに、変更や拡張が大変になってしまう。
より良い解は6要素の配列を使うこと。
int score[6]; // 6要素の配列が作られる。
// 例えば標準入力経由で各生徒の得点を配列scoreに読み込んだとする。
double mean = 0;
for (int i = 0; i < 6; ++i) {
mean += score[i];
// 配列の各要素へは、変数scoreを通してscore[0]からscore[5]のようにしてアクセスする。
}
mean /= 6;
このように配列を用いることで、添え字演算子(配列やリストなどのデータ構造から要素を取得するために使用される演算子のこと)による、統一的なアクセスおよび一括処理が可能となる。また、処理すべきデータ個数が増減したときにも対応しやすくなる。
■注意点
注意点としては、配列の要素は同じ型のものにするのが原則!
例えば数字なら数値型、文字なら文字列型と列の要素の型を統一する必要がある。
ただし言語によっては要素ごとに異なる型のデータを格納できる言語がある模様。
■補足:「添字」って?
「添字」は配列の要素を識別するための番号で、配列の箱に0から順番に割り当てられている。「0」から始まるところがポイント。
データ全体はコード中で配列名で指し示されていて、各要素は通し番号などの添字で区別される。
例えば、長さ5の整数型の配列変数xを宣言すると、x[0]からx[4]まで5つの整数型の変数が用意され、それぞれ独立に整数値を格納することができる。
【参考引用元】
① 配列とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
② 配列とは - 意味をわかりやすく - IT用語辞典 e-Words