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

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

「配列」と「連想配列」の違い

スポンサーリンク

予備知識


用語意味
変数プログラミング言語における「値を入れておく箱」
配列の添字配列の中身の箱ひとつひとつに割り振られた番号
配列の要素配列の中身の箱ひとつひとつのこと

「配列」と「連想配列」の違い1

それぞれの用語の意味


用語意味
配列変数をたくさん合体させた変数
連想配列添字に好きな名前を付けられる配列

似ているところ


どちらも変数をたくさん合体させた変数です。


違うところ


捉えようによっては同じものと見なすこともできなくはありませんが、一般的には添え字に指定できる値によって区別します。

「配列」と言った場合、添え字は「0から始まる整数」です。一つ目の要素の添え字は「0」、二つ目の要素の添え字は「1」、三つ目の要素の添え字は「2」、のように決まっています。


「配列」と「連想配列」の違い2

一方「連想配列」と言った場合は、添え字に好きな値を使用できます。
例えば、一つ目の要素の添え字は「愛媛」、二つ目の要素の添え字は「和歌山」、三つ目の要素の添え字は「静岡」、のように好きな名前を添え字にすることが可能です。


「配列」と「連想配列」の違い3

個人的な使い分け


「パッと見で意味を取りやすい」「一つの要素に対して、キーと値で二つの意味を持たせられる」との理由から、連想配列の方が好きです。
また、内部的な扱いに依らず

・添え字が数字
・0から始まって要素が増える毎に添え字の数字も1増える


だったら「配列」、それ以外の添え字だったら「連想配列」と呼ぶようにしています。



備考


「連想『配列』」というくらいなので、連想配列は配列の一種です。
また、連想配列は好きな名前を添え字にすることができる配列です。ということは、数字を添え字にしても問題は無いですよね?そう解釈すると、配列も連想配列の仲間だと言えるでしょう。
実際に両者を区別しないプログラミング言語もあります。
例えばPHPでは、配列も連想配列も内部的には連想配列(正確にはマップ型)として扱われます。

配列と連想配列を区別する上で混乱しちゃった人は、添え字が

・数字
・0から始まる
・要素が増える毎に数字が1増える


ものは「配列」、それ以外は「連想配列」と解釈してください。
それ以外の細かい違いはプログラミング言語によって異なります。


スポンサーリンク