11

ObjectiveC には NSArray がありNSArray* largeArrayますNSArray* smallArray

...または、largeArray が既に size <= x である場合は、largeArray のコピーが必要です。したがって、インデックス x の後のオブジェクトはすべて切り捨てられます。

このアプローチ:

NSArray *smallArray = [largeArray subarrayWithRange:NSMakeRange(0, x)];

この非常によく似た質問に対する答えでした。ただし、largeArray が既に小さい場合はエラーで失敗します。

4

3 に答える 3

-5

これを行うための明らかな長い方法は次のとおりです。

NSMutableArray* smallMutableArray;
if ([largeArray count] <= x) {
    smallMutableArray = [largeArray copy];
} else {
    for (int i=0; i<x; i++) {
       [smallMutableArray addObject:[largeArray objectAtIndex:i]];
    }
}
于 2013-07-29T16:27:45.340 に答える