集合对象存储空值

2016-10-30  本文已影响0人  Rasho_Moon

在NSArray NSDictionary NSSet等集合对象中存储一个对象,若是该对象从后台获取时返回的是nil,则会出现如下代码下效果

NSMutableDictionary *params= [NSMutableDictionary dictionary];
[dic setObject:nil forKey:@"name"];

这样会出现Crash,因为nil无法存储一个空值。

而对NSArray来说,nil表示这个字典对象的元素截止了,即NSArray只会关注nil之前的对象,nil之后的对象会被忽略,比如:

NSArray *arr = [NSArray arrayWithObject:@"name",@"password",@"phoneNum",nil];

要想存储一个空值,可用[NSNull null]空对象来存储。如下:

[param setObject:[NSNull null] forKey:@"name"];
NSArray *arr = [NSArray arrayWithObject:@"name",@"password",@"phoneNum",[NSNull null],nil];
上一篇 下一篇

猜你喜欢

热点阅读