📌  相关文章
📜  unity c# 将游戏对象存储在数组中 - C# (1)

📅  最后修改于: 2023-12-03 14:48:11.372000             🧑  作者: Mango

Unity C# 将游戏对象存储在数组中

在Unity开发中,我们需要经常对多个游戏对象进行统一的处理,这个时候就需要将这些游戏对象存储在一个数组中方便访问和管理。本文将介绍如何在C#中将游戏对象存储在数组中。

声明数组

在C#中声明数组的方式有两种,一种是使用数组的默认构造函数,另一种是使用数组初始化器。

使用数组的默认构造函数

数组的默认构造函数有两个参数,分别为数组的长度和数组每个元素的类型。例如,下面声明一个长度为3的GameObject数组:

GameObject[] gameObjects = new GameObject[3];
使用数组初始化器

数组初始化器可以直接为数组初始化值,例如:

GameObject[] gameObjects = new GameObject[] {
   gameObject1,
   gameObject2,
   gameObject3
};

在初始化器中,用逗号分隔各个元素,最后一个元素的后面不需要加逗号。还可以使用大括号初始化器简化语法,例如:

GameObject[] gameObjects = {
   gameObject1,
   gameObject2,
   gameObject3
};
访问数组元素

在使用数组时,可以通过下标来访问数组中的元素,下标从0开始。例如,获取第一个元素的代码为:

GameObject firstGameObject = gameObjects[0];
遍历数组

我们可以使用C#提供的foreach语句来遍历数组中的所有元素,例如:

foreach (GameObject gameObject in gameObjects) {
   // 处理gameObject
}
示例代码

下面是一个完整的示例代码,它声明一个长度为3的GameObject数组,并遍历其中的所有元素输出它们的名称:

using UnityEngine;

public class ObjectArray : MonoBehaviour
{
    private GameObject[] gameObjects = new GameObject[] {
        GameObject.Find("Cube"),
        GameObject.Find("Sphere"),
        GameObject.Find("Capsule")
    };

    void Start()
    {
        foreach (GameObject gameObject in gameObjects) {
            Debug.Log(gameObject.name);
        }
    }
}

以上就是本文介绍的内容,希望对Unity开发的初学者有所帮助。