我想阻止对象的进一步处理,如果它是null.
在下面的代码中,我通过以下任一方法检查对象是否为null:
if (!data.Equals(null))
Run Code Online (Sandbox Code Playgroud)
和
if (data != null)
Run Code Online (Sandbox Code Playgroud)
不过,我收到NullReferenceException的dataList.Add(data).如果对象为null,则它应该永远不会进入if-statement!
因此,我问这是否是检查对象是否为null的正确方法:
public List<Object> dataList;
public bool AddData(ref Object data)
bool success = false;
try
{
// I've also used "if (data != null)" which hasn't worked either
if (!data.Equals(null))
{
//NullReferenceException occurs here ...
dataList.Add(data);
success = doOtherStuff(data);
}
}
catch (Exception e)
{
throw new Exception(e.ToString());
}
return success;
}
Run Code Online (Sandbox Code Playgroud)
如果这是检查对象是否为null的正确方法,那么我做错了什么(如何防止对对象进一步处理以避免NullReferenceException)?