我得到了一个空值的数组。请检查下面我的数组的结构:
(
"< null>"
)
当我试图访问索引0时,它崩溃了,因为
-[NSNull isEqualToString:]: unrecognized selector sent to instance 0x389cea70
目前它正在崩溃,因为该数组有崩溃日志:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSNull isEqualToString:]: unrecognized selector sent to instance 0x389cea70'
*** First throw call stack:
(0x2d9fdf53 0x3820a6af 0x2da018e7 0x2da001d3 0x2d94f598 0x1dee57 0x1dfd31 0x302f598d 0x301a03e3 0x3052aeed 0x3016728b 0x301659d3 0x3019ec41 0x3019e5e7 0x30173a25 0x30172221 0x2d9c918b 0x2d9c865b 0x2d9c6e4f 0x2d931ce7 0x2d931acb 0x3262c283 0x301d3a41 0xabb71 0xabaf8)
libc++abi.dylib: terminating with uncaught exception of type NSException
发布于 2013-09-28 04:17:34
id object = myArray[0];// similar to [myArray objectAtIndex:0]
if(![object isEqual:[NSNull null]])
{
//do something if object is not equals to [NSNull null]
}
发布于 2013-09-28 04:18:24
if (myArray != (id)[NSNull null])
或
if(![myArray isKindOfClass:[NSNull class]])
发布于 2014-04-22 23:37:01
根据Toni的回答,我做了一个宏。
#define isNSNull(value) [value isKindOfClass:[NSNull class]]
然后使用它
if (isNSNull(dict[@"key"])) ...
https://stackoverflow.com/questions/19059202
复制相似问题