ios中的空值

nil、Nil、NULL、NSNull的區別
nil:指向一個對象的空指針
Nil:指向一個類的空指針
NULL:指向其他類型(如:基本類型、C類型)的空指針
NSNull:通常表示集合中的空值

舉例:

NSURL *url = nil;  
Class class = Nil;  
int *pointerInt = NULL;  
NSArray *array = [NSArray arrayWithObjects:[[NSObject alloc] init], [NSNull null], [[NSObject alloc] init], [[NSObject alloc] init], nil];

為什么上面的array里面的空對象不直接用nil?

如果用nil,就會變成NSArray *array = [NSArray arrayWithObjects:[[NSObject alloc] init], nil, [[NSObject alloc] init], [[NSObject alloc] init], nil];,
那么數組到第二個位置就會結束。打印[array count]的話會顯示1而不是4
所以[NSNull null]通??梢宰鳛橐粋€數組的占位符,從而是數組的count計算準確

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容