1. ホーム
  2. objective-c

[解決済み] Objective-CでNSArrayを逆引きするにはどうしたらいいですか?

2022-03-15 03:19:15

質問

を反転させる必要があります。 NSArray .

例として

[1,2,3,4,5] にならなければならない。 [5,4,3,2,1]

そのためには、どのような方法があるでしょうか。

どのように解決するのですか?

配列の逆コピーを取得する方法については danielpunkass の解決策 を使って reverseObjectEnumerator .

ミュータブル配列の反転は,以下のカテゴリを追加することで可能です.

@implementation NSMutableArray (Reverse)

- (void)reverse {
    if ([self count] <= 1)
        return;
    NSUInteger i = 0;
    NSUInteger j = [self count] - 1;
    while (i < j) {
        [self exchangeObjectAtIndex:i
                  withObjectAtIndex:j];

        i++;
        j--;
    }
}

@end