首页 > 其他 > 详细

?Object-C nil NULL 和 NSNull

时间:2015-09-18 19:00:29      阅读:178      评论:0      收藏:0      [点我收藏+]

nil 用来给对象赋值

NULL 则给任何指针赋值    //NULL 和 nil 不能互换,nil 用于类指针赋值

NSNull 则用于集合操作


一般情况下最好使用用 nil (空对象值,有意义) [ nil  任意方法],不会导致崩溃

NULL 是一个通用指针(泛型指针,指向空指针)

NSNull,NULL 和 nil 在本质上应该是一样的,NULL 和 nil 本质就是 0

Objective-c中 NSArray 和 NSDictionary 中的 nil 表示列表结束,所以不能在集合中放入 nil 值。如果定义了一个NSArray 为其分配了内存,又想设置其中的内容为空,则可以用 [NSNull null ] 初始化 NSArray

Object-C 的集合对象,如 NSArray、NSDictionary、NSSet 等,都有可能包含 NSNull 对象,如果集合中的对象为 NSNull,则会引起程序崩溃。

 

//判断对象不空

if(object) {}

//判断对象为空

if(object == nil) {}

//数组初始化,空值结束

NSArray *string=[[NSArray alloc] initWithObjects:@"1",@"2",@"3",nil];

//判断数组元素是否为空

if([NSArray objectAtIndex:i] == [NSNull null]){}

//判断字典对象的元素是否为空

if([NSDictionary objectForKey:@"keyName"] == [NSNull null]){}


?Object-C nil NULL 和 NSNull

原文:http://my.oschina.net/jack088/blog/508205

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!