版本: Unity 6 (6000.0)
语言英语
  • C#

Object.operator ==

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交的内容,但我们确实会阅读用户提出的每一个建议,并在适用情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册
public static bool operator ==(Object x, Object y);

参数

x 第一个 Object。
y 要与第一个对象进行比较的对象。

描述

比较两个对象引用,查看它们是否引用了同一个对象。

using UnityEngine;

public class Example : MonoBehaviour { public Collider target; void OnTriggerEnter(Collider trigger) { if (trigger == target) { print("We hit the target trigger"); } } }

如果目标不存在,请尽早退出。

using UnityEngine;

public class Example : MonoBehaviour { public Transform target; void Update() { // Early out if the target is gone if (target == null) { return; } } }

在与null进行比较时要小心。

例如

using UnityEngine;

public class Example : MonoBehaviour { void Start() { GameObject go = new GameObject(); Debug.Log(go == null); // false

Object obj = new Object(); Debug.Log(obj == null); // true } }

实例化一个GameObject 会将其添加到场景中,使其完全初始化(!已销毁)。实例化一个简单的 UnityEngine.Object 没有这样的语义,因此它保持在“已销毁”状态,在这种状态下与null比较为true