Jus*_*and 10 xcode objective-c ios
我在NSUserDefaults中设置了一个BOOL值,如下所示.
[userDefaults setBool:NO forKey:@"theKeyOfMyBOOL"];
Run Code Online (Sandbox Code Playgroud)
在我的代码中的其他地方,如果未在NSUserDefaults中设置密钥"theKeyOfMyBOOL",我想执行一些操作.如何验证是否设置了此密钥?如果我做
[userDefaults boolForKey:@"theKeyOfMyBOOL"];
Run Code Online (Sandbox Code Playgroud)
然后返回的值可能是nil,我认为它的计算结果为false,或者NO的实际BOOL值,其值为false.
但是,我需要区分这两个值(当然还有YES).我如何可靠地做到这一点?
jrt*_*ton 45
[userDefaults boolForKey:@"theKeyOfMyBOOL"];返回BOOL,所以要么是(YES或NO不是nil).
在内部,它存储为NSNumber.所以,如果你打电话
[userDefaults objectForKey:@"theKeyOfMyBOOL"];
Run Code Online (Sandbox Code Playgroud)
NSNumber如果你曾经存过任何东西,或者nil如果你没有存储过,你将得到一个.
| 归档时间: |
|
| 查看次数: |
4928 次 |
| 最近记录: |