2012-08-22 90 views
6

我的代码被读出的键/值对的列表等如下:ObjC:对象返回空描述?

A:nodeAbc 
... 
Q:node2 
R: 
T:node3 
... 

每一对使用的NSString分裂:componentsSeparatedByString:

NSArray *kv = [@"R:" componentsSeparatedByString:@":"]; 

在上面的列表中例如,R没有匹配的值。当我问到打印出来,这里是我得到:

(LLDB)PO [KV objectAtIndex:1] (ID)$ 33 = 0x00007fff77a888e0

我如何识别呢?

if ([kv objectAtIndex:1]) // returns YES 

我希望它被视为零,怎么办? 谢谢!

回答

17

它不是零,它是一个空字符串(阅读文档,它在那里陈述)。你想要的是

if ([[kv objectAtIndex:1] length] > 0)