【Unity入門】アプリ開発で必須!Listの使い方まとめ

こんにちは!エンジニアのオータケです。

ゲーム開発やアプリケーション開発を行っている際に、データをまとめて管理したいということがあると思います。

そういった際に使うのがListというデータ構造になります。

この記事を読んでいただくことで、

・Listとはなにか
・Listへデータを追加する方法
・Listのデータを削除する方法

から

・Listをより使いこなすための方法
・Listの使い方に困った時にどうすればよいか

といった情報について知ることができます。

UnityでもこのListという仕組みは使います。
しっかり学んでいきましょう!

Listとは?

まず、Listとはなにかですが一言で表すと、

「List」とは、同じデータ型の値をまとめて取り扱うためのモノです。

配列の場合、データを削除したり追加する際にひと手間かかってしまいますがListはそういったデータの操作がとても簡単にできます。

Listについてより知りたい方は次の記事をごらんください!

この記事ではListについての基本的な解説からListを扱うための詳しい情報がひとまとめにしてあります!

Unityを使ったゲーム開発の現場ではListは次のようなことに使われることがあります。

RPG

・マップデータ(地形データ)
・持っているアイテムデータ

など

シューティング

・敵の管理
・弾の管理

など

ここで紹介したのはごくごく一部の話です。
実際はもっと多くの場面で使われています!

では次の章で早速Listを追加してみよう。

Listにデータを追加してみよう

この章ではデータの追加方法について解説します。

まずListを使うためにはListを初期化しなければなりません。
初期化とはListを使えるようにするための準備作業だと思うと良いでしょう。

今回は先程の事例のRPGを例にプレイヤーが持っているアイテムの名前をListに追加するサンプルを書いてみたいと思います。

このサンプルではListの後ろに<>を記述し、stringを指定しています。
ここで型を指定し、どんなデータをいれるのか決めています。

その後にAddメソッドを呼んでいますが、引数には先程Listの型を決めたため文字列のデータを渡しています。

このサンプルの場合は3つアイテム名を追加したためこのplayerItemListには「ひび割れた棍棒」「錆びた剣」「折れそうな杖」といったデータを保持しています。

では次の章では今のサンプルを元にしてデータを削除してみましょう。

Listにデータを削除してみよう

この章では先程の章を元に、「錆びた剣」を捨てるということをしたいと思います。
(つまりデータを削除します)

先程のコードはこちらです。

そして錆びた剣だけを削除するコードがこちらです。

削除する際にはRemoveメソッドを使ってどのデータを削除するか引数に与えてあげることでデータを削除することができます。

難しくありませんよね?

より追加と削除について詳しく知りたい方は次の記事をごらんください。

【C#入門】Add、RemoveでListの要素を追加、削除する方法
更新日 : 2019年5月22日

Listを使いこなす

Listには他にも様々な機能がありゲーム開発、アプリケーション開発では必須のメソッドがあるため少しだけご紹介します!

データを並び替えよう(ソート)

ゲーム開発でスコアデータをListで保持していて、あとからスコアを追加したい場合があると思います。

このスコアを追加したあとにどうやって並び替えたらよいかという問題が出てくるかと思います。

そんなときにはこの記事にあるようにList.Sortメソッド等を使って並び替えるといいですよ!

【C#入門】配列、Listをソートする方法(降順、カスタマイズも解説)
更新日 : 2019年4月25日

データの長さを知りたい

先程のRPGの例で、プレイヤーの持てるアイテムの上限が30個だったとします。

30個以上はアイテムを拾うことができないような仕様にしたい場合、プレイヤーが何個データを保持しているか知りたいですよね?

どうやって調べればよいかと言うとCountプロパティを用いることで知ることができます!

例えば先程のRPGの例で、

こういったコードの場合には

とすることで、保持しているアイテム数(データの要素数)が変数itemCountに入ることになります。

こんなときには?

この記事では基本的な使い方をいくつか解説してきましたがその他にも多くの機能があります。

興味があるかたは次の記事を見ていただくことでよりListについて深く知ることができます!

【C#入門】Listの使い方総まとめ(ArrayList/Add/Remove/ソート/検索)
更新日 : 2019年5月3日

まとめ

いかがでしょうか?

C#のListは使いやすいためUnityでゲーム開発、アプリ開発をする際にすぐに覚えて使うことができるかと思います。

様々な場面で使うため必ず覚えておきましょう!

自分にプログラミングなんて・・・と思っていませんか?

今後10年間で今ある職業の『77%』はなくなると言われています。

人工知能や機械学習を筆頭にVR、AR、ドローンなどの最先端技術の発達はこれからのあなたの働き方に間違いなく影響を与えるでしょう。

将来を見据えてプログラミングができるようになってエンジニアになりたい、自分だけにしかできないクリエイティブな仕事がしたい、、、とお考えの方も少なくないでしょう。

と、同時に「難しそう、、自分にはできないだろう、、、」と諦めている方も多いのではないでしょうか。

弊社マンツーマンレッスンは、お一人お一人に専属のインストラクターがつくので、通常のスクールでは難しい、オリジナルアプリ開発や、フリーランスとしての仕事獲得まで支援しています。

まずは『無料体験レッスン』で弊社コンサルタントと一緒にあなた専用の学習カリキュラムを考えてみてはいかがでしょうか?

詳しくは下の画像をクリックしてください。

cta_mtm2

LINEで送る
Pocket

書いた人

オータケ

オータケ

30歳、フリーランスプログラマ。中学の頃よりプログラミングに興味を持ちゲーム開発やWebサイト構築などを経験
新しいフレームワークやライブラリに興味があり革新的な機能が含まれていると泣いて喜ぶ。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説