[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

二次元配列

pointこの用語のポイント

point配列だよ

point配列の配列だよ

point一次元配列と比較されるよ

スポンサーリンク

簡単に書くよ

二次元配列とは

ミカン箱が縦と横に並んだもの
と言われても「はぁ?」って感じですね。
真面目に書くと

値を入れておく箱が縦横に並んだ配列のこと
です。
より正確に書くと

配列の配列
です。

image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「配列」のあれやこれやについて簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は、適当に読み飛ばしてください。

配列は「データを入れておく箱の集まり」です。
ミカン箱(変数)がたくさん集まったものだと、お考えください。

二次元配列

それぞれのミカン箱を配列の「要素」と言います。
ミカン箱に割り振られている番号は配列の「添字」です。

二次元配列2

ここまでが予備知識です。
以上を踏まえて、二次元配列について見ていきましょう。

ズバッ!と言っちゃうと、ミカン箱の集まり(配列)のうち、ミカン箱が縦横に並んでいるものが「二次元配列」です。

二次元配列3

二次元配列は配列の配列だと考えると分かりやすいと思います。
まずは横に並んだミカン箱の集まりがあって、それが入った大きめのミカン箱が縦に並んでいるイメージです。

二次元配列4

二次元配列はその名の通り、二次元の配列です。
箱を特定する際には、縦横の添字の組み合わせで、どの箱かを指定します。

二次元配列5

例えば左から2番目、前から3番目の箱にミカンを3つ入れたいときは

ミカン箱配列[2][1] = ミカン3つ

のように書きます。
これは「添字が2の箱(前から3番目の箱)に入っている添字が1の箱(左から2番目の箱)にミカンを3つ入れてね」な命令です。
どの箱かの指定は「配列の名前[縦の添字][横の添字]」の形で指定します。
添字の指定は、左から

縦(大きな箱)→横(小さな箱)

の順です。
逆に覚えないように気を付けてくださいね。

ミカン箱の例を、もう少しプログラミング言語っぽい書き方にすると、例えば

//ミカン箱をそれぞれ用意(小さなミカン箱の集まり3つがと大きなミカン箱の集まり)
$mikan_ary = array();
$mikan_ary2 = array();
$mikan_ary3 = array();
$big_mikan_ary = array();

//大きなミカン箱に小さなミカン箱の集まりを入れておく
$big_mikan_ary[0] = $mikan_ary;
$big_mikan_ary[1] = $mikan_ary2;
$big_mikan_ary[2] = $mikan_ary3;

//大きなミカン箱に入った小さなミカン箱に数字を入れる
$big_mikan_ary[2][1] = 3;


のようになります。

配列「$mikan_ary」を要素として持つ配列「$big_mikan_ary」が二次元配列です。

ちなみに、二次元配列は「縦横(行と列)の配列」と説明されるのが一般的なのでそれに沿った説明をしましたが、個人的には「配列の配列」と覚えることをオススメします。
配列を配列にしたのが二次元配列です。

なぜ「配列の配列」で覚えることをオススメするかというと、より複雑な配列になったときにイメージしやすいからです。
二次元配列以上の配列は「多次元配列」と呼ばれるのですが、多次元配列はその気になればいくらでも複雑にできます。

ミカン箱を縦横に並べたのが二次元配列です。

二次元配列6

ミカン箱を縦横に並べたものを更に積み重ねたのが三次元配列です。

二次元配列7

では四次元配列は?ちょっとイメージするのが大変じゃないですか?

「配列の配列」で覚えた場合、配列(一次元配列)を配列にしたのが二次元配列です。

二次元配列8

配列の配列(二次元配列)を配列にしたのが三次元配列です。

二次元配列9

配列の配列の配列(三次元配列)を配列にしたのが四次元配列です。

二次元配列10

「何次元でもかかってこい!」って感じですね。
そんな経緯で、あくまで個人的な意見ではありますが、二次元配列は「縦横の配列」と覚えるより「配列の配列」と覚えた方が汎用的だと思います。

image piyo2

一言でまとめるよ

まぁ「二次元配列」って単語が出てきたら「配列の配列なんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク