Objective-c создает переменные в цикле - PullRequest
1 голос
/ 27 июля 2011

Есть ли способ создания переменных внутри цикла. По сути, что-то вроде этого, за исключением того, что переменные variable1, variable2 и variable3 будут существовать.

int x;

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

Ответы [ 3 ]

3 голосов
/ 27 июля 2011

Нет, нет.

Но вы можете сделать что-то вроде этого:

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

Это сохранит ваши x с в NSMutableDictionary, что сопоставимов ассоциативный массив на других языках.

0 голосов
/ 27 июля 2011

Вы можете использовать массив и устанавливать каждое значение так, как вам нравится.в вашем примере у вас есть фиксированный цикл 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]
0 голосов
/ 27 июля 2011

Вы неправильно думаете об именах переменных. Что вам нужно, так это структура данных, такая как массив, основанный на индексах, или словарь ( хеш-таблица ) для хранения этих значений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...