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