2011-07-27 144 views
1

是否有方法在循环内部创建变量。基本上是这样的,除了变量variable1,variable2和variable3会存在。Objective-c在循环中创建变量

int x; 

for (x = 1; x < 4; x++) { 
    int variable[x]; 
    variable[x] = x; 
} 

回答

0

您正在错误地考虑变量名称。您正在寻找的是数据结构,如基于索引的数组或保存这些值的dictionaryhash table)。

0

你可以使用数组并设置每个值,但是你喜欢。在你的例子中你有一个固定的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] 
3

不,没有。

但你可以做这样的事情:

NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init]; 
for (int i = 0; i < 4; i++) { 
    [dictionary setObject:[NSNumber numberWithInt:i] forKey:[NSString stringWithFormat:@"%i", i]]; 
} 

这将节省您的x S IN的NSMutableDictionary,这与其他语言的关联数组。

+0

NSNumbers使罚款密钥。 – bbum