如何在Objective-C中检查对象是否为零?

Lor*_*Ang 2 objective-c ios

所以我知道这看起来很基本,但似乎并没有因某种原因而起作用.我有以下代码.

Target *t = self.skill.target;


if (![t isEqual:nil]) {
    NSLog(@"Not nil");
}
Run Code Online (Sandbox Code Playgroud)

我尝试了这个,并且它每次出现都不是很好,除非什么时候t应该是零.我甚至尝试将变体放入代码中,因为某些原因,我的t仍然是nil.难道我做错了什么?:\

Target *t = self.skill.target;
t = nil;

if (![t isEqual:nil]) {
    NSLog(@"Not nil");
}
Run Code Online (Sandbox Code Playgroud)

Ale*_*Cio 12

你可以通过检查对象本身来正常地完成它.对NSNull的NSHipster也有很好的解释.

if( myObject ){
    // do something if object isn't nil
} else {
    // initialize object and do something
}
Run Code Online (Sandbox Code Playgroud)

否则只是使用

if( myObject == nil ){

} 
Run Code Online (Sandbox Code Playgroud)