iphone - 我们如何存储到 NSDictionary 中? NSDictionary 和 NSMutableDictionary 有什么区别?

标签 iphone objective-c nsdictionary nsmutabledictionary

我正在开发一个我想在其中使用 NSDictionary 的应用程序。谁能给我一个示例代码,解释如何使用 NSDictionary 存储数据的过程,并带有一个完美的示例?

最佳答案

NSDictionaryNSMutableDictionary文档可能是您最好的选择。他们甚至有一些关于如何做各种事情的很好的例子,比如......

...创建一个 NSDictionary

NSArray *keys = [NSArray arrayWithObjects:@"key1", @"key2", nil];
NSArray *objects = [NSArray arrayWithObjects:@"value1", @"value2", nil];
NSDictionary *dictionary = [NSDictionary dictionaryWithObjects:objects 
                                                       forKeys:keys];

...迭代它

for (id key in dictionary) {
    NSLog(@"key: %@, value: %@", key, [dictionary objectForKey:key]);
}

...使其可变

NSMutableDictionary *mutableDict = [dictionary mutableCopy];

注意:2010 年之前的历史版本:[[dictionary mutableCopy] autorelease]

...并改变它

[mutableDict setObject:@"value3" forKey:@"key3"];

...然后将其存储到文件中

[mutableDict writeToFile:@"path/to/file" atomically:YES];

...再读一遍

NSMutableDictionary *anotherDict = [NSMutableDictionary dictionaryWithContentsOfFile:@"path/to/file"];

...读取一个值

NSString *x = [anotherDict objectForKey:@"key1"];

...检查 key 是否存在

if ( [anotherDict objectForKey:@"key999"] == nil ) NSLog(@"that key is not there");

...使用可怕的 future 主义语法

从 2014 年开始,您实际上可以只输入 dict[@"key"] 而不是 [dict objectForKey:@"key"]

关于iphone - 我们如何存储到 NSDictionary 中? NSDictionary 和 NSMutableDictionary 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1760371/

相关文章:

iPhone : Upload video to Youtube while running app in device

objective-c - Swift 函数未包含在自动生成的 -Swift.h 伞文件中

ios - UICollectionView - Segue - 确实选择了特定的单元格,LOG

ios - NSDictionary 发布 Unicode 字符

iphone - 在 iPhone 模拟器上模拟位置更新

iphone - iOS:是否可以使用动画附加 MFMailComposeViewController?

ios - 如何在NSPredicate中使用NSDate和NSString从Core Data中获取数据?

ios - 如何更改 iphone 应用程序中的语言运行时?

iphone - NSDictionary,这是为什么

iphone - Xcode 7.1 执行调试时总是崩溃