今すぐ理解したい!Unityで配列を扱う方法【初心者向け】

初心者向けにUnityで配列(array)を使う方法を解説しています。配列(array)は、Unityでのゲーム開発のみならずプログラミング全般で必ず必要な知識になるので、これからスキルアップしたい方はぜひご覧ください。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

配列とは、ある特定の型の変数をグループにして分かりやすくしたものです。

ほとんどのプログラミング言語に存在し、もちろんUnityで使用されているC#でも使用することができます。今回はそんな配列について解説していきたいと思います。

 

なお、本記事はTechAcademyのUnity入門オンライン講座の内容をもとにしています。

 

田島悠介

ここではUnityで配列を扱うときのことについて勉強しよう。

大石ゆかり

田島メンター!!配列というのは何ですか~?

田島悠介

配列は同じ型の複数のデータをひとつにまとめて並べたものだよ。どちらかというと今回はUnityというよりプログラムについての内容になるね。

大石ゆかり

分かりました。お願いします!

 

配列の書き方

それでは配列の書き方について解説していきます。まずは配列の宣言の方法です。配列の宣言の方法には二種類があります。

int[] array = new int[50]; //配列の宣言 
int[] array = {0, 1, 2}; //配列の宣言&初期化

このように配列を宣言時に初期化する方法と、長さだけ決めて値自体は初期化しない方法があります。

ただ上のように、 宣言だけを行うと値が入っていない場所にアクセスされて思わぬバグを起こす可能性があるので配列のすべてに値を入れるようにしましょう。

また、配列は上に挙げた配列である「一次元配列」の他に「二次元配列」や「ジャグ配列」などが主に使用されます。

int[] array2 = new int[10][10]; //二次元配列 

int[][] jaggedArray = new int[10][]; 
jaggedArray[0] = new int[2]; 
jaggedArray[1] = new int[3]; //ジャグ配列の宣言

二次元配列はその名の通り、要素が二つある配列です。

表のようにデータを扱いたい時に使用します。 ジャグ配列は「配列の配列」と呼ばれているものです。使用頻度は少ないですが、大量のデータをまとめることができるので、使用する場面があります。

 

田島悠介

配列は宣言と同時に値を入れておくことができるんだ。

大石ゆかり

二次元配列とか、ジャグ配列とかかなり難しそうですね……

田島悠介

今回は練習として、シンプルな配列を画面に表示させることだけやってみよう。

 

実際に配列を書いてみる

それでは実際にUnityで配列を書いてみましょう。今回は配列を乱数で初期化して、その内容をすべて表示するプログラムを書いていきたいと思います。 今回は以下のようにテキストを作成して見やすい配色にしました。

unity_12_01

次に実際の処理の部分を書いていきましょう。

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class ArraySample : MonoBehaviour {

  public Text arrayText;
  private string[] stringArray = new string[10]; //配列の宣言

    void Start () {
    arrayText.text = ""; //テキストの初期化
    for (int i = 0; i < stringArray.Length; i++)
    {
      stringArray[i] = Random.Range(1, 100).ToString(); //乱数の生成
      arrayText.text = arrayText.text + stringArray[i] + ","; //テキストの上書き
    }
    }
}

実際に実行して見て、以下のようになれば成功です。

unity_12_02

 

[PR] Unityを使ったゲーム開発で挫折しない学習方法を動画で公開中

まとめ

今回は配列について解説していきました。配列を使用すれば、ループを回すのが簡単になったり、変数の整理ができたりします。

配列とよく似た構造のプログラミングにListというものもあるのでそちらもきになる方は調べてみてください。

 

田島悠介

配列に関する解説は以上だよ。

大石ゆかり

ここに表示されている数値が、配列の要素になるんですね。

田島悠介

今回はC#について解説したけれど、UnityではJavaScriptでの配列も仕様することができるよ。また、ビルトイン配列というものもあるけれどこれは要素の数を変更できないということを覚えておこう。

大石ゆかり

色々種類があるんですね。頭に入れておきます!

 

[お知らせ]TechAcademyではオリジナルゲームアプリが公開できるUnityオンラインブートキャンプを開催しています。現役Unityエンジニアのサポートで効率的に学びたい場合はご検討ください。