今天在项目中遇到这样一个问题,在一个可变数组里面怎样删除多个下标元素,关键是什么,数组arrayB里面的元素是可变动的,但是在数组arrayM下标范围内变动,一旦删除数组arrayM中一个下标元素,数组中的下标就会变动,再次删除下标的时候,就不再是以前那个下标了,想了很久,也不知道咋写,什么removeObjectAtIndex:什么removeObjectsAtIndexes都没成功,后来问了别人,最后研究出下面的方法,能够很好的解决同时删除数组中多个下标对应的元素:
NSMutableArray *arrayM = [[NSMutableArray alloc] initWithObjects:@"A",@"B",@"C",@"D",@"E",@"F",@"G",@"H",@"I", nil];
NSArray *arrayB = @[@"2",@"3",@"5"];
for (int j=0; j<arrayB.count; j++) {
NSString *aaa= [arrayB objectAtIndex:j];
int bbb=[aaa intValue]-j;
[arrayM removeObjectAtIndex:bbb];
}