2008-12-09 2 views
1

Можете ли вы сохранить массив (содержащий еще два подмассива, один из которых представляет собой строку и другой другой массив), в один объект MutableArray?Использование NSMutableArray для хранения данных

+0

Можете ли вы быть более конкретным с вашим вопросом? Существует несколько способов интерпретировать то, что вы просили. – 2008-12-09 03:21:05

ответ

3

Прочитайте документацию по NSArray. Он может содержать любое количество произвольных объектов.

Это, не зная больше о том, что вы делаете, я предлагаю вам взглянуть на NSDictionary и его изменяемый подкласс.

3

Да, вы можете хранить объекты любого типа в одном из классов NSArray. Единственная трудность заключается в концептуальном рассмотрении того, как получить доступ к этой структуре данных; сложная вложенность массивов в массивы может быть сложной задачей и привести к ошибкам. Убедитесь, что ваши потребности не лучше решены другой структурой данных или пользовательским классом.

0

Да. Вы можете использовать следующую (огромный) строку кода:

NSMutableArray * completeArray = 
    [NSMutableArray arrayWithArray: 
     [[myArray objectAtIndex:0] arrayByAddingObjectsFromArray: 
      [myArray objectAtIndex:1]]];

редактировать: Если предположить, что myArray определяется следующим образом:


NSArray * stringArray = [NSArray arrayWithObjects: 
         @"one", @"two", @"three", nil]; 
NSArray * otherArray = [NSArray arrayWithObjects: 
         someObj, otherObj, thirdObj, nil]; 
NSArray * myArray = [NSArray arrayWithObjects: 
        stringArray, otherArray, nil];

Строка кода я писал выше, даст вам один большой NSMutableArray, который содержит:

@"one, @"two", @"three", someObj, otherObj, thirdObj

Смежные вопросы