如何使用数组的计数创建多个 NSDictionary
变量?
这基本上是我想出的,但我不确定如何使用 Objective-C 语法来实现它。 doesntContainAnother
是一个 NSArray
。我希望字典的名称使用 loopInt
的当前值。
int *loopInt = 0;
while (doesntContainAnother.count <= loopInt) {
NSMutableDictionary *[NSString stringWithFormat:@"loopDictionary%i", loopInt] = [[[NSMutableDictionary alloc] init] autorelease];
[NSString stringWithFormat:@"loopDictionary%i", loopInt] = [NSDictionary dictionaryWithObject:[array1 objectAtIndex:loopInt]
forKey:[array2 objectAtIndex:loopInt]];
loopInt = loopInt + 1;
}
最佳答案
创建一个可变数组并循环直到达到原始数组的计数,创建一个字典并在每次迭代时将其添加到可变数组中。
您的代码应如下所示。
NSMutableArray *dictionaries = [[NSMutableArray alloc] init];
for (int i = 0; i < doesntContainAnother.count; i++) {
[dictionaries addObject:[NSMutableDictionary dictionaryWithObject:[array1 objectAtIndex:i] forKey:[array2 objectAtIndex:i]]];
}
创建名称末尾带有数字的变量的方法是一种反模式,甚至在 Objective-C 中是不可能的。它相当于一个数组,但更笨重。
关于objective-c - 基于 int 创建多个编号变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2231783/