我的代码正在读取键/值对的列表,如下所示:
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
我希望将其视为零,怎么办呢? 谢谢!
答案 0 :(得分:18)
它不是零,它是一个空字符串(阅读文档,它在那里说明)。你想要的是
if ([[kv objectAtIndex:1] length] > 0)