1. 程式人生 > >nil/Nil/NULL/NSNull的區別

nil/Nil/NULL/NSNull的區別

四、NSNull

1、宣告位置

NSNull.h檔案

2、定義

@interface NSNull : NSObject <NSCopying, NSSecureCoding>

+ (NSNull *)null;

@end

3、用處及含義

從定義中可以看出,NSNull是一個Objective-C類,只不過這個類相當特殊,因為它表示的是空值,即什麼都不存。它也只有一個單例方法+[NSUll null]。該類通常用於在集合物件中儲存一個空的佔位物件。

4、示例

我們通常初始化NSArray物件的形式如下:
NSArray *arr = [NSArray arrayWithObjects:@"wang",@"zz",nil];
當NSArray裡遇到nil時,就說明這個陣列物件的元素截止了,即NSArray只關注nil之前的物件,nil之後的物件會被拋棄。比如下面的寫法:
NSArray *arr = [NSArray arrayWithObjects:@"wang",@"zz",nil,@"foogry"];
這是NSArray中只會儲存wang和zz兩個字串,foogry字串會被拋棄。