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

2次元配列

pointこの用語のポイント

point配列だよ

point配列の配列だよ

point1次元配列と比較されるよ

スポンサーリンク

簡単に書くよ

2次元配列(読:ニジゲンハイレツ 英:two-dimensional array)とは

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

値を入れておく箱(変数)が縦横に並んだ配列(複数の変数がくっついたもの)のこと
です。
より正確に書くと

配列の配列
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として

変数
配列
配列の要素
配列の添字(ソエジ)


について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

変数は「プログラミング言語における『値を入れておく箱』」です。
処理の途中で値を入れたり、逆に取り出したりできます。

2次元配列

配列は「複数の変数をくっつけたもの」です。
ミカン箱(変数)がたくさん集まったものだと思ってください。

2次元配列2

変数は「値を入れておく箱」でした。

2次元配列3

配列は「値を入れておく箱が複数くっついたもの」です。

2次元配列4

配列の要素は「配列の中にある箱ひとつひとつ」です。
言い方を変えると「複数の変数をくっつけたもの」の中にある「変数」のことです。

2次元配列5

配列の添字は「配列の要素に割り振られた番号」です。

2次元配列6

以上を踏まえて

ミカン箱の集まり(配列)のうち、ミカン箱が縦横に並んでいるもの

が「2次元配列」です。

2次元配列7

2次元配列は

配列の配列

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

2次元配列8

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

2次元配列9

箱の指定は

配列の名前[縦の添字][横の添字]

の形でやります。
添字の指定は、左から

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

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

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

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

のように書きます。
これは「添字が2の箱(前から3番目の箱)に入っている添字が1の箱(左から2番目の箱)にミカンを3つ入れてね」な命令です。

2次元配列10

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

//ミカン箱をそれぞれ用意(小さなミカン箱の集まり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」が2次元配列です。

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

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

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

2次元配列11

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

2次元配列12

それでは4次元配列は、どうなるでしょうね?
ちょっとイメージするのが大変じゃないですか?

「配列の配列」で覚えた場合、配列1次元配列を配列にしたのが2次元配列です。

2次元配列13

配列の配列(2次元配列)を配列にしたのが3次元配列です。

2次元配列14

配列の配列の配列(3次元配列)を配列にしたのが4次元配列です。

2次元配列15

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


image piyo2

一言でまとめるよ

まぁ「2次元配列」って単語が出てきたら「配列(複数の変数がくっついたもの)の配列なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像055
書籍画像033

おまけ

■検索してみる?




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
実務で役立つ ログの教科書 基礎知識から収集方法・分析手法・トラブルシューティング・パフォーマンス最適化・機械学習での活用まで
実践サイバーセキュリティ入門講座 現場に残された痕跡からハッカーの攻撃を暴け