如何在xcode中创建数组键和值?

use*_*965 5 objective-c nsdictionary

我是新的Iphone开发者,我需要你的帮助,

任何人都提供我创建具有键和值的数组,以及如何获取xcode.

Dav*_*ave 12

这是NSMutableDictionary.您可以搜索示例代码.例如:创建字典

NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];
[dictionary setObject:@"object1" forKey:@"key1"];
Run Code Online (Sandbox Code Playgroud)

打印Dict的所有键和值:

for (NSString* key in [dictionary allKeys]) {
   NSLog(@"key: %@, value: %@", key, [dictionary objectForKey:key]);
}
Run Code Online (Sandbox Code Playgroud)


Pop*_*eye 5

您可以使用NSDictionaryNSmutabledictionary实现此功能,您不需要使用和NSArray.这是一个如何工作的例子.

  NSMutableDictionary *dict = [[NSMutableDictionary alloc] init]; // Don't always need this 
  // Note you can't use setObject: forKey: if you are using NSDictionary
  [dict setObject:@"Value1" forKey:@"Key1"];
  [dict setObject:@"Value2" forKey:@"Key2"];
  [dict setObject:@"Value3" forKey:@"Key3"];
Run Code Online (Sandbox Code Playgroud)

然后你可以通过执行来检索键的值.

  NSString *valueStr = [dict objectForKey:@"Key2"];
Run Code Online (Sandbox Code Playgroud)

这将在valueStr字符串中给出Value2的值.

将对象添加到无Mutable字典中NSDictionary就可以了

 NSDictionary *dict2 = [[NSDictionary alloc] initWithObjectsAndKeys:@"Value1", @"Key1", @"Value2", @"Key2", nil];
Run Code Online (Sandbox Code Playgroud)

然后以与a相同的方式检索它NSMutableDictionary.两者之间的区别在于Mutable字典可以在创建之后进行修改,因此可以使用setObject:forKey和删除对象来添加对象,removeObjectFroKey:而无法修改无可变字典,因此一旦创建它就会卡住它直到它已经存在释放,所以不添加或删除对象.

希望这可以帮助.