/ / jak stworzyć NSMutableArray dynamicznie w oparciu o pewien stan w iphone - iphone, cel-c, kakao-touch

jak dynamicznie tworzyć NSMutableArray na podstawie pewnych warunków w iphone - iphone, objective-c, cocoa-touch

Mam szereg dat, więc na podstawie niektórychwarunek daty Potrzebuję stworzyć NSmutablearray i dodać pewne wartości do tej konkretnej tablicy. więc liczba sekcji w moim widoku tabeli zależy od tej liczby zmiennej mutable (która wewnętrznie zależy od stanu daty).

na przykład:

if(date1)
1.create array1
2.add x,y,z values to the array1.

if(date2)
1.create array2
2.add xx,yy,zz values to the array2.

....

dzięki..

Odpowiedzi:

11 dla odpowiedzi nr 1
NSMutableArray *a = [NSMutableArray array];
if (b) {
[a addObject: ... some object based on "b" being true ...];
... etc ...
} else if (c) {
[a addObject: ... some object based on "c" being true ...];
... etc ...
} else {
[a addObject: ... some object based on neither "c" nor "b" being true ...];
... etc ...
}

-2 dla odpowiedzi nr 2

[Odpowiadając na komentarz lorda]

"Don" t "jest silnym słowem zważywszy na to

NSMutableArray * aMutableArray = [NSMutableArrayszyk]; // kompiluje, ale wywołuje tablicę + w klasie nadrzędnej NSMutableArray, ponieważ + tablica nie jest zadeklarowana w NSMutableArray. To, co otrzymasz, jeśli sprawdzasz obiekt zwracany przez wyrażenie komunikatu, to NSArray.

Jeśli naprawdę chcesz użyć + tablicy, ale nie metody klasy NSMutableArray + arrayWithCapacity:, być może

NSMutableArray * aMutableArray = [[NSMutableArray array] mutableCopy];

wystarczy? Po prostu nie zapomnij zarządzać pamięcią.