我是一名新的iPhone开发者,需要您的帮助。
有人能提供如何创建带键和值的数组,并在Xcode中如何获取吗?
我是一名新的iPhone开发者,需要您的帮助。
有人能提供如何创建带键和值的数组,并在Xcode中如何获取吗?
这是NSMutableDictionary。您可以搜索示例代码。 例如:创建字典
NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];
[dictionary setObject:@"object1" forKey:@"key1"];
打印字典的所有键和值:
for (NSString* key in [dictionary allKeys]) {
NSLog(@"key: %@, value: %@", key, [dictionary objectForKey:key]);
}
您可以使用NSDictionary
或NSMutabledictionary
来实现此功能,无需使用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"];
NSString *valueStr = [dict objectForKey:@"Key2"];
NSDictionary *dict2 = [[NSDictionary alloc] initWithObjectsAndKeys:@"Value1", @"Key1", @"Value2", @"Key2", nil];
NSMutableDictionary
一样检索它。两者之间的区别在于,Mutable
字典可以在创建后进行修改,因此可以使用 setObject:forKey
添加对象并使用 removeObjectFroKey:
删除对象,而不可变字典无法修改,因此一旦创建后就不能添加或删除对象,直到它被释放为止。希望这可以帮助你。这正是 NSDictionary / NSMutableDictionary 所做的:
NSMutableDictionary *myDictionary = [[ NSMutableDictionary alloc] init];
[ myDictionary setObject:@"John" forKey:@"name"];
[ myDictionary setObject:@"Developer" forKey:@"position"];
[ myDictionary setObject:@"1/1/1984" forKey:@"born"];
区别是,可变的一个可以在创建后添加/修改条目,而另一个则不行。
NSDictionary* dict= @{ @"key1" : @"value1" , @"key2" : @"value2" };
NSArray* array= @[ @"value1" , @"value2", @"value3" ];