我只是对if条件进行了一个简单的旧字符串比较,我得到了一个奇怪的行为。在控制台中,我得到了以下内容并从座位上掉下来。
(lldb) po [@"Puc X-1234" rangeOfString:@"Puc"]
nil
这怎么可能?
答案 0 :(得分:6)
rangeOfString:
返回NSRange
,这不是对象,但po
用于打印对象
尝试p (NSRange)[@"Puc X-1234" rangeOfString:@"Puc"]
打印nil
的原因是返回的NSRange
是(0,3)
,然后调试器采用0
部分并假设它是id
类型,并打印nil