-1

我有一个NSMutableArray计数为 10,我想提取最后 5 个值并将它们存储在另一个数组中。我怎样才能做到这一点?

4

3 回答 3

6

我认为- (NSArray *) subarrayWithRange:(NSRange)rangedoc)可能会对您有所帮助。

NSRange theRange;
theRange.location = [wholeArray count] - 5;
theRange.length = 5;
NSArray *result = [wholeArray subarrayWithRange:theRange];

编辑:小心检查您的数组是否至少有五个元素,否则subarrayWithRange会引发异常。

于 2013-08-27T05:59:11.407 回答
2

使用以下方式:

 NSMutableArray *first = [[NSMutableArray alloc] initWithObjects:@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10", nil];

    NSMutableArray *sec = [[NSMutableArray alloc] init];
    for(int i=5; i< [first count]; i++) {

        [sec addObject:[first objectAtIndex:i]];

     }

NSLog(@"sec - %@",sec);
于 2013-08-27T06:04:25.937 回答
0

您可以使用 subarrayWithRange 方法来获取所需的数组数据。试试这个,希望它会起作用。

if (yourMutableArray.count > 10) 
{
NSArray *newArray = [yourMutableArray subarrayWithRange:NSMakeRange(yourMutableArray.count-10, yourMutableArray.count-1)];
}
于 2015-02-12T06:02:19.057 回答