1.nil 指给对象赋值(Objective-C中的任何对象都属于id类型)
id object = nil;
// 判断对象不为空
if (object) {
}
- // 判断对象为空
- if (object == nil) {
- }
- NSArray *array = [[NSArray alloc] initWithObjects:@"First", @"Second", nil];
- // 判断数组元素是否为空
- NSString *element = [array objectAtIndex:2];
- if ((NSNull *)element == [NSNull null]) {
- }
-
而以下要判断数组元素是否为空,都是无效if(!element)if([element length]>0)if(element== NULL)if(element == Nil)
3、当向nil发送消息时,返回NO,不会有异常,程序将继续执行下去;而向NSNull的对象发送消息时会收到异常。
nil是一个对象指针为空,Nil是一个类指针为空,NULL是基本数据类型为空。