【发布时间】:2011-07-27 15:12:34
【问题描述】:
有没有办法在循环内创建变量。基本上是这样的,除了变量 variable1、variable2 和 variable3 会存在。
int x;
for (x = 1; x < 4; x++) {
int variable[x];
variable[x] = x;
}
【问题讨论】:
标签: objective-c
有没有办法在循环内创建变量。基本上是这样的,除了变量 variable1、variable2 和 variable3 会存在。
int x;
for (x = 1; x < 4; x++) {
int variable[x];
variable[x] = x;
}
【问题讨论】:
标签: objective-c
不,没有。
但是你可以这样做:
NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init];
for (int i = 0; i < 4; i++) {
[dictionary setObject:[NSNumber numberWithInt:i] forKey:[NSString stringWithFormat:@"%i", i]];
}
这会将您的xs 保存在NSMutableDictionary 中,这与其他语言中的关联数组相当。
【讨论】:
您正在错误地考虑变量名称。您正在寻找的是一种数据结构,例如基于索引的数组或用于保存这些值的 dictionary (hash table)。
【讨论】:
你可以使用一个数组并设置你喜欢的每个值。在您的示例中,您有一个固定的 for 循环,因此您可以定义一个 4 数组并进行迭代。
代码:
NSMutableArray *myArray = [NSMutableArray arrayWithCapacity:4];
for (int x=0; x<4; x++)
{
[myArray addObject:x];
}
//you now have an array of 4 int like this: [1,2,3,4]
【讨论】: