У меня есть массив с NSDictionary - 3 ключевых 3 значения, и мне нужно искать дубликаты объектов и сосчитать ихNSMutable поиск массива продублировать
- первый ключ - чек (1/0)
- второй ключ - масса (0 - 200)
- и третий ключ - подход (1 - 6)
- игнорировали - ключ проверки
Код:
NSMutableString *newtext = [[NSMutableString alloc] init];
NSMutableArray *original = [NSMutableArray arrayWithArray:[[_myExercise objectAtIndex:indexPath.row] objectForKey:@"myApproach"]];
NSMutableArray *myArr = [NSMutableArray arrayWithArray:[[_myExercise objectAtIndex:indexPath.row] objectForKey:@"myApproach"]];
for (int i = 0; i < [original count]; i ++) {
int count = 0;
for (int j = 0; j < [myArr count]; j ++) {
if ([original containsObject:[myArr objectAtIndex:i]]) {
count ++;
NSLog(@"нашед %d", count);
[original removeObjectAtIndex:0];
}
}
NSLog(@"%@", original);
NSString *myStr = [NSString stringWithFormat:@"%d Х %@ Х %@", count, [[myArr objectAtIndex:i] objectForKey:@"repeat"], [[myArr objectAtIndex:i] objectForKey:@"weight"] ];
[newtext appendString:myStr];
}
Непонятно, что вы пытаетесь сделать. Или то, что код пытается сделать. Для чего нужен индекс «j»? Почему вы всегда "[original removeObjectAtIndex: 0];" если исходный массив содержит объект: myArr objectAtIndex: i] (который всегда будет истинным, так как myArr должен иметь то же содержимое, что и оригинал). Этот код в основном просто удалит все из оригинала. – geowar