Unity的C#编程教程_40_array 数组
Array Syntax
- C# 中的数组,用于存放多个相同类型的元素
- 比如你有五个角色,那么这五个角色的名字是相同类型,可以放在一个数组中进行管理
假设我们不用数组:
public string nameA = "XiaoMing";
public string nameB = "ZhangSan";
public string nameC = "LiSi";
public string nameD = "WngWu";
public string nameE = "Zhaoliu";
这看上去很累赘不是吗?如果不是 5 个名字,而是 100 个呢?难道要写 100 行?
我们可以这样使用数组:
public string[] names = new string[5];
然后到 unity 的 inspector 窗口中输入 5 个名字即可!
在 Unity 的 C# 中有 3 种常用方式定义数组:
// 定义一个名字叫做 names 的数组
public string[] names;
// 定义一个数组,预设大小为 5
public string[] names = new string[5];
// 定义一个数组,并设置默认参数
public string[] names = new string[] { "XiaoMing", "ZhangSan", "LiSi", "LiSi", "WngWu", "Zhaoliu" };
第一种方式自由度最高,我们进入 unity 的 inspector 中可以设定所需元素个数,设定具体的元素值。
但是自由度高的代价是一旦reset,那所有数据都会清空!所以实际操作中,记得定期保存!
第一种方式在实际运用中用得最多!
第二种方式,reset 后元素值会被清除。
第三种方式,reset 后元素值会恢复到默认的预设值。
2. Array Elements
- 定义好了一个 array,如何访问里面的元素呢?
我们先初始化一个 array:
// 定义一个名字叫做 names 的数组
public string[] names;
然后到 unity 的 inspector 中输入 3 个名字,比如 A,B,C,保存后,回到 C# 脚本
我们可以使用 array 名加序号的形式进行访问数组中的元素
void Start()
{
Debug.Log(names[0]); // 打印出来第 0 号元素,即 A
}
这里注意序号从 0 开始,所以要打印第 3 个元素,序号为 2