配列とは?プログラミングで使う配列について分かりやすく解説

配列と聞くと、数学で出てくる難しいイメージを持たれる人が多いかもしれません。しかし、プログラミングの配列は難しい代物ではありません。簡単な例を交えて、解説していきます。

この記事はこんな人にオススメです
  • まだ配列がよくわかってない
  • 配列の使い方を知りたい
  • 配列の使用例が見たい

配列とは

配列は例えるなら棚のようなものです。変数は1つの値だけ格納できますが、配列はいくつもの値を格納できます。

配列を使うことで、複数の値を1つの変数にまとめることができます。

配列を使うメリット

配列には以下のメリットがあります。

複数の値の一括管理

例えば10人分の名前を保存したいとき、配列ではない変数の場合は10個必要になります。これでは管理が難しいです。

配列は1つの変数にいくつもデータを連続して格納できるため、追加や管理が簡単に行えます。

繰り返し処理

例えば30回データ出力したいとき、出力の関数を30行書いて実行するのは手間ですし、手直しが大変です。配列に備えつけられた関数や、for文を使うことで、出力の関数を1行に縮めることができます。

配列の定義

今回の例では、名字のリストをnameList配列に落とし込んでいきます。

nameList = ['田中', '佐藤', '鈴木']

「”」で囲われている部分は文字列を表しています。

上の図では、nameList配列に ‘田中’と’佐藤’と’鈴木’の文字列が格納しています。

要素へのアクセス

配列の要素にアクセスするには、インデックスという数字を使います。

インデックスは0,1,2…と続いていきます。(1からではないので注意!)

先の例で定義したnameListにアクセスするには、以下のようにします。

  • nameList[0] ➞ ‘田中’を取得
  • nameList[1] ➞ ‘佐藤’を取得
  • nameList[2] ➞ ‘鈴木’を取得

配列のサイズ以上のインデックスを指定すると、範囲外エラーが発生します。(上記nameList配列で言うと3以上の数値)
エラーが起こると処理が中断されてしまうため注意が必要です。

要素の変更

配列の要素を変更するには、インデックスを指定して値を代入します。

nameList[0] = '渡辺'
nameList[1] = '谷'

要素の追加

要素を追加する方法はプログラム言語によって違います。

JavaScriptではpushメソッド、Pythonではappendメソッドといったように、言語ごとに要素の追加手段が用意されています。

繰り返し処理

配列の各要素を繰り返し処理するには、forループを使います。

ここではPythonを例に解説します。

まず、簡単な配列を作成します。この配列には、いくつかの整数が含まれています。

numbers = [1, 2, 3, 4, 5]

次に、この配列の要素をfor文を使って順番に表示してみましょう。

for number in numbers:
    print(number)
  1. for number in numbers:
    • これはfor文の開始部分です。「numbers」という配列の各要素を順番に「number」という変数に代入していきます。
  2. print(number)
    • forループの内部で、現在の「number」を表示します。インデント(空白またはスペース)でforループの中身であることを示しています。

このコードを実行すると、次のように表示されます。

1
2
3
4
5

各プログラミング言語での記述例

JavaScript

JavaScriptの配列は変数と同じように、変数名の前に宣言キーワードを記述します。

// 定義
let nameList = ['田中','佐藤','鈴木'];

// 変更
nameList[0] = '田邊';

// 追加
nameList.push('伊藤');

Python

Pythonは型の宣言が不要なため、記述はシンプルです。

# 定義
nameList = ['田中','佐藤','鈴木']

#変更
nameList[0] = '田邊';

#追加
nameList.append('伊藤')

PHP

PHPでは、シンプルに記述できます。

// 定義
$nameList = ['田中','佐藤','鈴木'];

// 変更
$nameList[0] = '田邊';

// 追加
$nameList[] = '伊藤';

PHPはスタンダードな配列に加えて、連想配列という辞書型のデータ構造があります。

$dictionary = ['tanaka' => '田中', 'suzuki' => '鈴木'];

配列と記述方法が似ているため混同しそうになりますが、全く違うデータ構造なので注意が必要です。

Java

Javaでは配列に格納する値の型を指定する必要があります。指定する型は、組み込みクラスに対応するラッパークラスという型を使います。また、配列を定義する際はArrayListという型を使います。複雑なので詳しくはここでは割愛します。

List<String> nameList = new ArrayList<>(Arrays.asList("田中", "鈴木", "佐藤"));

まとめ

配列は、同じ種類のデータをまとめて管理して、効率的にアクセス・操作できる便利なデータ構造です。配列の知識はプログラミングで必要不可欠なので、これを期に是非覚えてみてください!

コメント