У меня есть NSMutableArray, который я перебираю и пытаюсь найти среднее значение каждого набора из четырех, и устанавливаю среднее значение для индекса, который является первым значением в этом наборе.Вот что у меня есть:
for (int i = 0; i < [romArray count] - 4; i++) {
double a = [[romArray objectAtIndex:i] getValue] + [[romArray objectAtIndex:i+1] getValue] + [[romArray objectAtIndex:i + 2] getValue] + [[romArray objectAtIndex:i + 3] getValue];
a /= 4;
[romArray replaceObjectAtIndex:i withObject:[[Value alloc] initWithValues:[[romArray objectAtIndex:i] getTimestamp] :a ]];
[romArray removeObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(i + 1, 3)]];
b++;
}
NSLog(@"%i", b);
b
возвращается как 70 (из набора из 280), так что я знаю, что проблема не в i++
.Когда цикл завершен, в массиве остается то же количество объектов, поэтому метод removeObjects
не является на самом деле удалением объектов.Идеи, почему бы и нет?