楔子
之前记了一些关于List和其他的琐碎东西,感觉还是差了点什么,
毕竟在教材的第五章里分别解释过Array、List和Dictionary的用法,
这些东西对初学者来说还是比较麻烦的。
而查了一些Blog和Wiki之后也是有一些无法理解的地方,例如
算了,现在去研究这么深的东西,实在是不敢恭维(;¬_¬)
不管这么多了,先进入主题吧。
注意:个人是零基础学习C#和Unity,在下文可能会有不正确的地方,若有大神指正则是万幸。
教材:Learning C# by Developing Games with Unity 3D Beginner's Guide by Terry Norton
Unity版本:5.6.1f1
小记
之前的文章说过建立新的List以及List的录入,但从语法上来讲,还是不够本质。
所以我这次在教材里分别抽出Array、List和Dictionary在建立和录用的例子。
这次小马神教仍然大活跃233
string[] ponyArray = new string[]
{
"AppleJack",
"Rarity"
};
引用 Learning C# by Developing Games with Unity 3D Beginner's Guide, Page 78,Terry Norton.
List<string> ponyList = new List<string> ()
{
"Princess Cadence",
"Fluttershy"
};
引用 Learning C# by Developing Games with Unity 3D Beginner's Guide, Page 78,Terry Norton.
Dictionary<int,string> ponyDictionary = new Dictionary<int,string> ()
{
{ 10,"Nightmare Moon" },
{ 20,"Rainbow Dash" }
};
引用 Learning C# by Developing Games with Unity 3D Beginner's Guide, Page 78,Terry Norton.
枚举了三个粒例子后可以发现,其格式基本是:
数据类型[] 名字 = new 数据类型[]
{
同数据类型的内容A,
同数据类型的内容B,
...,
同数据类型的内容Z
};
或是:
数据结构<数据类型> 名字 = new 数据结构<数据类型>
{
同数据类型的内容A,
同数据类型的内容B,
...,
同数据类型的内容Z
};
或是:
数据结构<数据类型1,数据类型2> 名字 = new 数据结构<数据类型1,数据类型2>{
{同数据类型1的内容A, 同数据类型2的内容a} ;
{同数据类型1的内容B, 同数据类型2的内容b} ;
...;
{同数据类型1的内容Z, 同数据类型2的内容z}
};
另外,对于使用两种数据类型的函数,需要使用KeyValuePair<TKey,TValue>来提取其中的内容,例如:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class LearningScript : MonoBehaviour
{
void Start ()
{
Dictionary<int,string> ponyDictionary = new Dictionary<int,string> () {
{ 10,"Nightmare Moon" },
{ 20,"Rainbow Dash" }
};
foreach (KeyValuePair<int,string> pony in ponyDictionary)
{
if (pony.Key == 20)
Debug.Log ("I was looking for " + pony.Value);
}
}
}
引用且变体于 Learning C# by Developing Games with Unity 3D Beginner's Guide, Page 78,Terry Norton.
使用foreach完全搜索一次ponyDictionary中的元素,并输出到pony,
此时的元素由于包括Key和Value两个部分。
通过if中pony的Key的值来判断是否输出Debug.Log,
在输出时便会有:
I was looking for Rainbow Dash
UnityEngine.Debug:Log(Object)
就算是成功的了。

本文介绍了Unity中的C#基础知识,特别是Array、List和Dictionary的用法,通过实例展示了它们的创建和操作。针对初学者,文章探讨了这三种数据结构的异同,同时提醒可能存在理解上的难点,如检索速度差异。虽然未深入探究原因,但提供了简单易懂的代码示例。
576

被折叠的 条评论
为什么被折叠?



