「Unity/Csharp/Exception/NullReferenceException」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→NullReferenceException発生) |
(→対応方法1) |
||
行19: | 行19: | ||
<pre> | <pre> | ||
if (text != null) | if (text != null) | ||
+ | { | ||
+ | text.text = "hoge"; | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | ===対応方法2=== | ||
+ | ReferenceEqualsを使う | ||
+ | <pre> | ||
+ | if (!ReferenceEquals(text, null)) | ||
{ | { | ||
text.text = "hoge"; | text.text = "hoge"; | ||
} | } | ||
</pre> | </pre> |
2023年10月17日 (火) 15:48時点における版
NullReferenceException発生
以下SerializeFieldのtextに、オブジェクトを入れなかった場合、NullReferenceExceptionが発生する。
using UnityEngine; using UnityEngine.UI; public class NullReferenceExceptionScene : MonoBehaviour { [SerializeField] Text text; void Start() { text.text = "hoge"; } }
対応方法1
null判定する
if (text != null) { text.text = "hoge"; }
対応方法2
ReferenceEqualsを使う
if (!ReferenceEquals(text, null)) { text.text = "hoge"; }