получение значений из NSMutableArray от конца к началу

#iphone #objective-c #nsmutablearray #reverse

#iPhone #objective-c #nsmutablearray #обратный

Вопрос:

Я хочу взять значения из NSMutableArray, но хочу прочитать из последнего индекса в 1-й индекс

Спасибо

Комментарии:

1. Вы пробовали for ( int i = [array count]-1; i>=0; i--) ?

2.В противном случае попробуйте одно из этих: – sortedArrayUsingDescriptors: – sortedArrayUsingSelector: – sortedArrayUsingComparator:

Ответ №1:

 for (id someObject in [someArray reverseObjectEnumerator])
{
    //do your thing
}
  

Ответ №2:

2 других варианта:

Простой цикл for (конечно, не рекомендуется):

 for (int i = [array count]-1; i >= 0;   i)
    id value = [array objectAtIndex: i];
  

Перечисление на основе блоков:

 [array enumerateObjectsWithOptions: NSEnumerationReverse
                        usingBlock: ^(id obj, NSUInteger idx, BOOL *stop){
                              //do something
                        }];
  

Ответ №3:

Ответ Марка полезен, но эта форма может быть полезна, когда вы хотите изменить массив:

 while ([arr count]) {
  id obj  = [arr lastObject];
  // use obj
  [arr removeLastObject];
}