nil:指向oc中对象的空指针
Nil:指向oc中类的空指针
NULL:指向其他类型的空指针,如一个c类型的内存指针
NSNull:在集合对象中,表示空值的对象
[NSNull null]是一个对象,他用在不能使用nil的场合。
因为在NSArray和NSDictionary中nil中有特殊的含义(表示列表结束),所以不能在集合中放入nil值。如要确实需要存储一个表示“什么都没有”的值,可以使用NSNull类。例:[NSMutableArrayObj addObject: [NSNull null]];
若obj为nil:
[obj message]将返回NO,而不是NSException
若obj为NSNull:
[obj message]将抛出异常NSException
分享到:
相关推荐
《Objective-C程序设计》(作者杨正洪、郑齐心、李建国)通过大量的实例系统地介绍了Objective-C语言的基本概念、语法规则、框架、类库及开发环境。读者在阅读本书后,可以掌握Objective-C语言的基本内容,并进行...
Object_C 中的 nil 相当于 NULL 。 Object_C 中的 YES 和 NO 相当于 true 和 false 。 这里再讲解一下 YES 和 NO : Object-c 提供了 BOOL 类型,但这个 BOOL 类型和 C++ 里的并不一样:在 C++ 里一切非 0 值的东西...
资源名称:Objective-C学习资料汇总专题资源目录:【】Objective-C NSAutoreleasePool【】Objective-c 中 nil, Nil, NULL和NSNull的区别【】Objective-C 中self 和 super【】Objective-C 的编程之道【】Objective-C_...
Google Objective-C Style Guide 中文版 目录 例子 空格与格式 空格与制表符 行宽 方法声明与定义 方法调用 @public与@private 异常 协议 命名 文件名 Objective-C++ 类名 分类名 Objective-C方法名 变量名 注释 ...
相信有不少朋友想知道,在 Objective-C 中 nil 和 Nil 以及 NULL 的区别。最重要的是,在面试中还有不少朋友常会被问到。现在小编在这里统一详细说明。
IOS 基础之nil,NULL,NSNULL区别详解 ① nil:一般赋值给空对象。 ② NULL:NULL 是一个通用指针(泛型指针)。 一般赋值给 nil 之外的其他空值。如SEL等。 ③ NSNULL:[NSNull null] 是一个对象,他用在不能使用 ...
使用 nil (Working with nilWorking with nilWorking with nilWorking with nil Working with nil Working with nil Working with nil Working with nil ) . 11 扩展( Extensions Extensions Extensions ...
[map setObject:@"c" forKey:@"content"]; 或者 NSMutableArray *list = [[NSMutableArray alloc]init]; NSMutableDictionary *map1 = [[NSMutableDictionary alloc]init]; [map1 setObject:@"a1" forKey:@...
主要介绍了iOS中nil、Nil、NULL、NSNull详解的相关资料,需要的朋友可以参考下
objective-c小技巧 1. 使用@property和@synthesize声明一个成员变量,给其赋值是时要在前面加上"self.",以便调用成员变量的setmember方法。 直接调用成员变量并且给其赋值:member=[NSString stringWithFormat...
在 Objective-C 或 Ruby 中创建动态网络爬虫。 用法 创建一个刮板: # import " IGScraperKit.h " IGScraper* scraper = [IGScraper scraperWithBlock: ^ id (IGXMLNode* node, NSString * url) { return [[[node...
Objective-C简单封装 字符串的存储操作,省去中间沙盒处理方式 代码如下:/存储publickey和sessionID — writeContent: nil - 仅取出数据, 其他 - 修改原内容并提取+(NSString *)storeFile:(NSString *)fileName...
XMLReader ...NSError *error = nil; NSDictionary *dict = [XMLReader dictionaryForXMLData:data options:XMLReaderOptionsProcessNamespaces error:&error]; 要求 Xcode 4.4及更高版本,因为项目使
MangoFix是一种DSL,其语法与Objective-C非常相似,MangoFix也是一个iOS App修补程序SDK。 您可以使用MangoFix方法替换任何Objective-C方法。 例 # import " AppDelegate.h " # import @implementation AppDelegate...
KO2Abc* c = [KO2Abc allocWithZone:nil]; KO2Abc* d = [KO2Abc new]; KO2Abc* e = [[KO2Abc alloc] copy]; KO2Abc* f = [[KO2Abc alloc] mutableCopy]; XCTAssertEqualObjects(a, b); XCTAssertEqualObjects(a, c)...