如何判断一个密钥是否存在

我正在研究一个小型的iPhone应用程序,并且我正在使用NSUserDefaults作为我的数据持久性。 它只需要跟踪一些事情,比如一些名字和一些数字,所以我想我可能会保持简单。

我发现这个页面有一些参考,但我不认为它可以回答我的问题。 基本上,我希望能够检查一个值(或一个键)是否已经存在于NSUserDefaults ,然后做相应的事情。

一些例子:应用程序启动,如果这是第一次启动它输出一个警告说欢迎。 要告诉它是否第一次打开它,读取UserDefaults并进行检查。

例2:它说,“你好[名字]”,其中名称是你输入的东西。 如果你已经打开应用程序,并没有名称,它应该说“Hello World”。 我需要检查你是否已经输入了一个名字,并据此采取行动。 该名称将存储在NSUserDefaults

一些帮助在这里? 我真的很感激它!


objectForKey:如果不存在,将返回nil


如上所述,它不适用于0 / NO可能是有效值的基本类型。 我正在使用此代码。

NSUserDefaults *defaults= [NSUserDefaults standardUserDefaults];
if([[[defaults dictionaryRepresentation] allKeys] containsObject:@"mykey"]){

    NSLog(@"mykey found");
}

如果值不存在, objectForKey:方法将返回nil 。 这是一个简单的IF / THEN测试,它会告诉你该值是否为零:

if([[NSUserDefaults standardUserDefaults] objectForKey:@"YOUR_KEY"] != nil) {
    ...
}
链接地址: http://www.djcxy.com/p/19223.html

上一篇: How to tell if a key exists

下一篇: translating MIPS binary code to MIPS assembly