Как да обърна реда на обектите в NSMutableArray?

Опитвам се да постигна нещо подобно

NSMutableArray *myArray = [NSMutableArray arrayWithObjects:@"A",@"B",@"C", nil];
NSLog(@"Array: %@", myArray);
//logs A, B, C.

//reverse code here

 NSLog(@"Array: %@", myArray);
//logs C, B, A

Кодът не е точен, просто е демонстрация. Но разбирате идеята.

Има ли начин да направите това?


person Sam Jarman    schedule 16.01.2010    source източник
comment
Намерих тази подобна публикация в stackOverflow: stackoverflow.com/questions/586370/ Мисля, че ще отговаря и на вашите изисквания.   -  person D.C.    schedule 17.01.2010


Отговори (1)


Просто използвайте;

NSArray* reversed = [[myArray reverseObjectEnumerator] allObjects];

Редът документирано е правилно:

Този масив съдържа всички останали обекти на изброителя в изброен ред [курсивът е добавен].

person EEE    schedule 16.01.2010
comment
това ще работи ли с променлив масив? - person Sam Jarman; 17.01.2010
comment
Да; NSMutableArray е, по декларация, подклас на NSArray. - person bbum; 17.01.2010
comment
Не е гарантирано, че работи. Може да се счупи по всяко време. - person Georg Schölly; 28.04.2010
comment
@user102008 Извикването на allObjects, направено в края, не е гарантирано, че ще върне обекти в определен ред. Просто се случва винаги да ги връща в ред на устройствата досега. - person meddlingwithfire; 24.01.2012
comment
@GeorgSchölly Вече гарантирано от документация. - person Albert Renshaw; 14.07.2018