如何最好地确定一个对象引用变量是否为null
?
以下代码是正确的吗?
MyObject myObjVar = null;
if (myObjVar == null)
{
// do stuff
}
如何最好地确定一个对象引用变量是否为null
?
以下代码是正确的吗?
MyObject myObjVar = null;
if (myObjVar == null)
{
// do stuff
}
是的,你是正确的,如果你想执行任意代码,以下代码片段就是最好的选择:
MyObject myObjVar;
if (myObjVar == null)
{
// do stuff
}
顺便说一下:您的代码现在无法编译,因为访问了尚未初始化的myObjVar
。
您可以使用Object.ReferenceEquals函数
if (Object.ReferenceEquals(null, myObjVar))
{
.......
}
==
的实现中测试null,那么我认为Object.ReferenceEquals
是必不可少的。 - bronzenoseif (myObjVar == null)
{
// do stuff
}
但是,您可以使用空值合并运算符??
进行检查,并分配一些内容
var obj = myObjVar ?? new MyObject();
您可以:
MyObject myObjVar = MethodThatMayOrMayNotReturnNull();
if (if (Object.ReferenceEquals(null, myObjVar))
{
// do stuff
}
MyObject myObjVar = null;
if (myObjVar is null)
{
// do stuff
}
MyObject obj = myObjVar ?? DefaultObjVar
- Mohamed Nuur