objectForKey和之间有什么区别valueForKey?我在文档中查看了它们,它们对我来说似乎是一样的.
我在网上找到的大多数例子都写道:
if(x != nil)
// ...
Run Code Online (Sandbox Code Playgroud)
这有什么问题吗?
if(x)
// ...
Run Code Online (Sandbox Code Playgroud)
我在一个简单的程序中尝试了两个,但没有找到任何区别.
我想检查天气NSString是否为空.我从JSON数组分配.分配后该字符串值为<null>.现在我想检查这个字符串是否为null.所以我这样说
if (myStringAuthID==nil)但是这个if语句总是假的.我如何检查字符串为null.请帮我
谢谢
我有一个NSString对象,
NSString *aString;
Run Code Online (Sandbox Code Playgroud)
那么以下两个版本是等价的吗?
版本1:
if ( (NSString *)[NSNull null] == aString )
{
// Logic handling
}
Run Code Online (Sandbox Code Playgroud)
版本2:
if ( nil == aString )
{
// Logic handling
}
Run Code Online (Sandbox Code Playgroud)
我的简单测试结果表明上述两个版本有不同的行为:
何时aString初始化然后分配nil:
false 在版本1中表达,
true 在版本2中表达.
何时aString使用值初始化@"".
false 在版本1中表达,
false 在版本2中表达.
所以很明显,这两个版本的行为并不相同.
测试代码:
NSString *aString = nil;
NSString *bString = [NSString stringWithFormat:@""];
if ((NSString *)[NSNull null] == aString) {
NSLog(@"a1 - …Run Code Online (Sandbox Code Playgroud)