Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

プログラミングを学ぶにあたり、配列は避けることの出来ない重要な概念の1つです。小学校から学んだ算数を理解していないと中学・高校で学ぶ数学を理解できないように、配列もプログラミングを行うためには理解必須なものとなっています。

この記事の結論
  • プログラミングで扱う配列とは、連番で管理できる変数のこと
  • プログラミング言語によって、配列の仕様が異なる場合もあるが、データの初期化、追加、更新、削除などの機能が用意されている
  • 配列は2次元以上の多次元配列を扱うことができる

プログラミングにおける「配列」とは

配列は、ほぼ全てのプログラミング言語に実装されている基本的なデータ型の1つです。
複数存在する同じ種類・型のデータをまとめて管理したい時に使います。配列で管理される個々のデータにアクセスするには、自然数で表現される”添え字(インデックス)”というものを使用します。

これからプログラミングを学ぶ方にとっては、なかなかイメージしにくいかと思いますが実生活シーンで例えてみると、たとえば混んでいるレストランに行った時に書く順番待ちの紙などがイメージしやすいでしょうか。このように各要素(この場合は、名前)に”順番”となる添え字を与えることによって、複数のデータ(名前)を管理するイメージと似ています。

未経験からプログラミング技術が学べるスクールはこちら

配列を使うときの注意点

プログラミング言語によって配列の仕様が若干違う場合がありますが、起こしがちな注意点があります。それは、『配列の添え字は自然数が”0から始まることが多い”』ということです。ここは、初心者、経験者問わず、良く間違える落とし穴でもあるのですが、日常生活で物を数える時に”1つ目の・・”の様に1から考えることに慣れてしまっているために起こしやすいことが原因です。配列を使用する時は、そのプログラミング言語の配列の仕様として、インデックスの扱いを確認することを行いましょう。

配列の使い方

上述したレストランの順番名簿を配列にしてみます。
言語によってコードの書き方は違いますが、今回はswift3を用います。

データの初期化

レストランに入ると満員状態。レストラン側は、お客さんを順番に通すために、順番待ち用紙を入り口に置いています。これを配列にしてみます。この用紙には、自分の名前を書くので、要素の型は、String型になります。

var list: [String] = [“A様”, “B様"]

配列の名前(順番待ち用紙)をlistとしています。右辺で初期化しています。既に2組が待っている状態で初期化されている意味となります。

データの追加

レストランに入ると2組既に待っているので、自分の名前を順番待ち用紙に入れます。

list[2] = “自分の名前”

添え字が2となっているところに注意してください。配列の添え字(順番を表すインデックス値)は0から開始されます。つまり、各要素と添え字の関係は、

list[0] => A様
list[1] => B様

となっているので、次の添え字としては2となります。
上の例では”自分の名前”を登録する時に、直接2というインデックス数字を指定しましたが、実際プログラミングをする時には、appendメソッドというものを使用することが多いです。appendメソッドは配列の一番最後に要素を追加してくれるメソッドとして多くのプログラミング言語で使用できます。
理由としては、要素追加時に配列が要素を幾つ持っているかを、毎回調べる必要がなくなるためです。

データの更新

1つ席が空いたのでA様がレストラン内に通されました。同時にlistの内容を更新します。更新内容としては、次に呼ばれる予定の”B様”をlist[0]に。そして”自分の名前”をlist[1]に繰り上げることになります。

list[0] = “B様”
list[1] = “自分の名前”

このままではlist[2]に、まだ”自分の名前”が入っているので、

list[2] = “”

として空の要素を入れて削除します。

ただ、要素を追加した時にappnedメソッドというのを紹介したように、
一番末尾の要素を削除するメソッドも用意されていますので、
プログラミングコード自体の可読性を考慮し、こういうケース時は、なるべく削除メソッドを使用しましょう。

list.removeLast()

これで順番待ち用紙が更新されました!

現役エンジニアからフィードバックが受けられるプログラミングスクールはこちら

2次元配列(多次元配列)の使い方

2次元配列というのは、配列の各要素が配列のものを言います。たとえば、ある学年(例|〇〇小学校1年)に3クラスあったとした場合の各クラスの名簿をイメージしてみます。

var meibo: [[String]] = []
meibo[0] = [“aくん”, “bくん”・・・・]
meibo[1] = [“aaくん”, “bbくん”・・・・]
meibo[2] = [“aaaくん”, “bbbくん”・・・・]

このように名簿を初期化することが出来ます。この例ではmeibo配列の要素が1次元配列となっていますが、さらに2次元配列、3次元配列というように次元を上げて管理することも出来るので、データの扱い方や定義を考える時に、どのくらい次元をがあった方が、わかりやすく扱いやすいか?を考えることが大切です。

転職サポートのあるプログラミングスクールはこちら

まとめ

配列の基本的な概念と使い方の例を挙げてみました。読んだだけでは、この便利さが分かりづらいかもしれませんが、実際プログラミングを行うと無くてはならない便利なものと認識できると思います。配列を使うことは、どのようにデータを定義するかというプログラミングのロジカルな部分で非常に重要な要素となってくるので、徐々に応用力を上げていきましょう!

プログラミングの基礎に不安があるというあなたは、ポテパンキャンプのようなオンラインスクールも検討しましょう。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。