I have a NSMutableArray
whose count is 10 and I want to extract the last 5 values and store them in another array. How can I do this?
I think that - (NSArray *) subarrayWithRange:(NSRange)range
(doc) might help you.
NSRange theRange;
theRange.location = [wholeArray count] - 5;
theRange.length = 5;
NSArray *result = [wholeArray subarrayWithRange:theRange];
EDIT : Be careful to check that your array has at least five elements, else, subarrayWithRange
will throw an exception.
You can use subarrayWithRange method to get the desired arraydata. Try this hopefully it will work.
if (yourMutableArray.count > 10)
{
NSArray *newArray = [yourMutableArray subarrayWithRange:NSMakeRange(yourMutableArray.count-10, yourMutableArray.count-1)];
}
Use following way :
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);