我是一名新的 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
orNSmutabledictionary
来实现这一点,您不需要使用 and 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"];
这将在 valueStr 字符串中给出 Value2 的值。
将对象添加到非可变字典NSDictionary
中即可
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" ];