C#の基礎!Listについて学習しよう!
Unityで使用する言語であるC#について解説します。
今回はListと配列の違いからListの解説を行います。他にも、変数や関数など様々な機能の解説もしていますので、よかったらっ見ていってください。
Listとは?
Listは配列とほとんど同じですが、Listは要素をあとから追加したり削除したりすることができます。
言葉だけの説明だとわからないと思うので実際にやっていきましょう!
Listの使い方
Listの使い方をサンプルプログラムを見ながら学習しましょう!
Listの使い方の例
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Sample : MonoBehaviour
{
void Start()
{
//listの宣言の仕方
//List<変数> 名前 = new List<変数名>(){内容};
List<int> numberList = new List<int>() { 1, 10, -1 };
//Listの取得の仕方
for(int i=0; i < numberList.Count; i++)
{
Debug.Log(numberList[i]);
}
//Listに100を追加
numberList.Add(100);
Debug.Log("Listに100を追加");
for(int i=0; i < numberList.Count; i++)
{
Debug.Log(numberList[i]);
}
//Listの10を削除
numberList.Remove(10); //RemoveAt(何番目) Remove(削除するもの)
Debug.Log("Listの10を削除後");
for(int i=0; i<numberList.Count; i++)
{
Debug.Log(numberList[i]);
}
}
}
|
配列ではLengthを使っていましたが、ListではCountを使うので間違えないように注意してください。
デバックログで確認
スクリプトはAssetsフォルダに入っているだけでは使えないので、GameObjectに貼り付けます。
Hierarchy→Create Emptyで空のGameObjectを作成します。
GameObjectにSampleスクリプトをドラックアンドドロップしてスクリプトを追加します。

実行結果
下記が実行結果になります。
配列ではではできない追加や削除が行えることが分かると思います。

foreach文を使ってみる
Listでは配列とは違いfor文の代わりにforeach文を使うことができます。
foreach文って何?って方も多いと思います。
とりあえずサンプルプログラムをやってみましょう!
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Sample : MonoBehaviour
{
void Start()
{
//listの宣言の仕方
//List<変数> 名前 = new List<変数名>(){内容};
List<int> numberList = new List<int>() { 1, 10, -1 };
//foreach文で書く
foreach(int number in numberList)
{
Debug.Log(number);
}
}
}
|
foreach文は、基本的には中身をループしたいときのみに使いますが、for文はループの条件が指定できるのでいろんなケースで使うことができます。
代わりにforeachは宣言がfor文より簡略化されています。
まとめ
今回はListについて解説しました。基本的には配列と同じですが、配列では行えない追加と削除ができるので場合によってListと配列を使い分けできるようにしておくと便利でしょう。
コメント