我有一个JSON,它给我一个关键:
" fork":false或" fork":true
当我查看字典时,有一个
fork = 0;或者fork = 1;
但是当我尝试调用此代码时
BOOL forkExist;
if (dictionary[@"fork"])
{
if ((BOOL)dictionary[@"fork"])
{
NSLog(@">>>>>>>>>>>>>>>>>>> EXIST %@", dictionary[@"fork"]);
forkExist = YES;
}
else
{
NSLog(@">>>>>>>>>>>>>>>>>>> NOT EXIST %@", dictionary[@"fork"]);
forkExist = NO;
}
}
非常适合我运行NSLog(@">>>>>>>>>>>>>>>>>> >> EXIST%@",字典[@" fork"]);从来没有第二次NSLog
这是一个日志
>>>>>>>>>>>>>>>>>>> EXIST 0
>>>>>>>>>>>>>>>>>>> EXIST 1
>>>>>>>>>>>>>>>>>>> EXIST 0
>>>>>>>>>>>>>>>>>>> EXIST 0
>>>>>>>>>>>>>>>>>>> EXIST 0
>>>>>>>>>>>>>>>>>>> EXIST 1
但正如你所看到的那样,即使有0个值也不会调用NOT EXIST。
我检查了字典[@" fork"]并且它说它是__NSCFBoolean
但是当app比较它似乎不起作用
答案 0 :(得分:3)
字典将包含BOOL
的NSNumber @ 0或@ 1,对象句柄总是" truthy",所以...
BOOL forkExist = [dictionary[@"fork"] boolValue];
应该正常工作。