Listについて
0.0 はじめに
同じ型のデータをまとめて取り扱うことが出来るList。
配列の場合は追加や削除に手間がかかりますが、Listの場合は動的に変更が可能です。C#にてよく使う機能をまとめてみました。
スクリプトに続けてコンソール画面の表示とそれぞれの簡単な説明があります。
using System.Collections.Generic;
using UnityEngine;
public class Test : MonoBehaviour {
List<string> list = new List<string>();
List<string> anotherList = new List<string>();
string elements = ""; // 要素表示用
void Start() {
// 1.0 要素の追加
list.Add("東京");
list.Add("名古屋");
list.Add("大阪");
list.Add("福岡");
// list内の要素をすべてelementsに格納
foreach (string str in list) {
elements += str + ", ";
}
// コンソール画面にlist内の要素をすべて表示
Debug.Log("1.0 要素の追加後ーー> " + elements);
elements = ""; // 初期化
// 2.1 要素名で削除
list.Remove("大阪");
// list内の要素をすべてelementsに格納
foreach (string str in list) {
elements += str + ", ";
}
// コンソール画面にlist内の要素をすべて表示
Debug.Log("2.1 要素名で削除後ーー> " + elements);
elements = ""; // 初期化
// インデックス番号で削除
list.RemoveAt(1);
// list内の要素をすべてelementsに格納
foreach (string str in list) {
elements += str + ", ";
}
// 2.2 コンソール画面にlist内の要素をすべて表示
Debug.Log("2.2 インデックス番号で削除後ーー> " + elements);
elements = ""; // 初期化
// 2.3 すべての要素を削除
list.Clear();
// コンソール画面にlist内の要素の数を表示
Debug.Log("2.3 すべて削除後の要素数ーー> " + list.Count);
// 要素追加
list.Add("りんご");
list.Add("みかん");
list.Add("ばなな");
list.Add("もも");
// 3.0 要素の並べ替え
list.Sort();
// list内の要素をすべてelementsに格納
foreach (string str in list) {
elements += str + ", ";
}
// コンソール画面にlist内の要素をすべて表示
Debug.Log("3.0 要素の並べ替え後ーー> " + elements);
elements = ""; // 初期化
// 4.1 インデックス番号を取得する
Debug.Log("4.1 インデックス番号取得(りんご)ーー> " + list.IndexOf("りんご"));
// 4.2 値が含まれているかを判定
Debug.Log("4.2 値が含まれているか(もも)ーー> " + list.Contains("もも"));
Debug.Log("4.2 値が含まれているか(なし)ーー> " + list.Contains("なし"));
// 5.0 値を入れての初期化
list = new List<string>() {"算数", "国語", "理科" };
// list内の要素をすべてelementsに格納
foreach (string str in list) {
elements += str + ", ";
}
// コンソール画面にlist内の要素をすべて表示
Debug.Log("5.0 値を入れての初期化後ーー> " + elements);
// 6.0 複数の要素を一度にまとめて追加したい場合
elements = "";
anotherList.AddRange(list);
anotherList.AddRange(list); // 2回入れている
foreach (string str in anotherList) {
elements += str + ", ";
}
Debug.Log("6.0 複数の要素を一度にまとめて追加の後ーー> " + elements);
}
}
1.0 要素の追加
list.Add()
引数に追加したい要素を入れます。
2.0 要素の削除
削除の方法はいくつかあります。
2.1 要素名を指定しての削除
list.Remove()
引数に削除したい要素名を入れます。
2.2 インデックスを指定しての削除
list.RemoveAt()
引数に削除したいインデックス番号(int)を入れます。
2.3 すべての要素の削除
list.Clear()
要素数は0になります。
👍ポイント!!
list.Countで要素数を調べることができます。
3.0 要素の並べ替え ソート
list.Sort()
Listの要素を昇順に並び替えます。
4.0 要素検索
4.1 インデックス番号を取得する
list.IndexOf()
引数は検索したい要素名。
返り値で検索した要素のインデックスを取得する。
4.2 値が含まれているかを判定する
list.Contains()
引数は検索したい要素名。
値が含まれているかを判定する方法、返り値はTrue/False
5.0 値を入れての初期化
後ろに{}を付けてそのなかに値を入れます。
List test = new List() { "値1", "値2", "値3" };
👍ポイント!!
()省略可
6.0 複数の要素を一度にまとめて追加したい場合
list.AddRange(array);
array部にはListでも配列でも取り扱い可能です。
7.0 要素の一部をListとして取り出す方法
list.GetRange(int index, int count)を使用します。
第一引数は切り取り部分のスタートとなるindex番号
第二引数は切り取りたい個数
👍ポイント!!
引数(2,3)の場合は要素番号2から要素番号4までの3要素を抜き出します。
Author And Source
この問題について(Listについて), 我々は、より多くの情報をここで見つけました https://qiita.com/yuyujiteki/items/048d4b60bb0463ad8596著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .