我下载了一个代码来测试一个 nsobject 是否为空
测试是这样的:
-(BOOL) isNotEmpty
{
return !(self == nil
|| [self isKindOfClass:[NSNull class]]
|| ([self respondsToSelector:@selector(length)]
&& [(NSData *)self length] == 0)
|| ([self respondsToSelector:@selector(count)]
&& [(NSArray *)self count] == 0));
};
这部分让我感到困惑:
(NSData *)self length
作者怎么能像那样从 NSObject 中输入 NSData 呢?