【Unity連載】Listを使いこなそう!



はじめに

前回までの2回で「配列」を紹介してきました。いくつもの値を一つの配列の中に入れることができて非常に便利に見えた配列ですが、一つ大きな弱点があります。今回はまずそこからお話していきましょう。

配列の記事の冒頭の例では、学校の先生が生徒10人のテストの点数をそれぞれ記録し、その点数を「可」か「不可」に評価するプログラムを作成したいという例から、配列の利便性について論じました。今回はこの例をさらに拡張することで配列に不便を感じていただきたいと思います。仮に、この配列を作成した後に、急遽転校生がやってきてテストを受けたとしたらどうでしょうか?配列は最初にデータの数を定義してしまいますから10個のデータしか入らない配列に対して11人目の転校生のデータを入れることはできませんよね?つまり、配列を作り直すしかありません。いかがでしょうか?つまり配列は格納できるデータ数を柔軟に変更することができないのです。これが配列の不便性です。
そこで登場するのが今回ご紹介する「List」です。こちらも、複数のデータを1つのListに格納するという点においては配列と同様ですが、後から格納できるデータ数を柔軟に変更することができるという利点があります。この利便性と共に具体的な使い方をご紹介します!


Listの利便性

先ほどの例を配列によって再現した例が↓になります。

//↓既に10人分の配列を作成してしまった
int[] scores = { 80,90,70,50,80,60,100,40,80,90 };
//↓インデックス10(11番目)にデータを入れようとするがエラーになる
scorese[10] = 70;
//↓仕方がないので新たな配列を作成することになる
int[] newScores = { 80,90,70,50,80,60,100,40,80,90,70 };

不便ですよね。。。それに対してListを使うと↓の様になります。

//↓既に10人分のListを作成してしまった
List<int> scoresList = new List<int>(){ 80,90,70,50,80,60,100,40,80,90 };
//↓それでも大丈夫!インデックス10(11番目)にデータを格納できる!
scoresList.Add(70);

↑の例の様にListを使えばデータの数を柔軟に変更することができます。


配列の基本的な使い方

先ほどの例で何となく使い方が分かってしまった方もいらっしゃるかもしれませんが、実際の使い方を丁寧に解説していきます。
まず、Listの変数の作り方です。上の例では、Listを作ると同時に変数(初期値)を入れてしまっていますね。この書き方は↓の様になります。

List<データ型> リスト名 = new List<データ型>(){ 初期値1,初期値2,・・・,初期値n };   //公式
List<int> scoresList = new List<int>(){ 80,90,70,50,80,60,100,40,80,90 };                   //具体例

また、初期値はセットせず、変数のみ作ることもできます。その書き方は↓の様になります。

List<データ型> リスト名 = new List<データ型>();   //公式
List<int> scoresList = new List<int>();              //具体例

次に、データをリストに加える方法です。こちらも先ほどの例で薄々気づかれた方もいらっしゃるかと思います。Listのメソッドの1つである「Addメソッド」を使います。

scoresList.Add(70);   //Listの一番後ろに要素「70」を付け加える
scoresList.Add(90);   //Listの一番後ろに更に要素「90」を付け加える

おわりに

みなさんいかがでしたでしょうか。Listを用いることによって、配列よりさらに柔軟にデータを管理できることを実感できましたでしょうか?しかし「Addメソッド」の例を見て勘の良い方はもう気づいていることでしょう、配列と同様に有用なメソッドが用意されているであろうことに。。。その通り!Listにもいくつかの有用なメソッドが用意されています。次回はListのメソッドをご紹介します。乞うご期待!

 

  • このエントリーをはてなブックマークに追加

PAGE TOP