Comment get des objects d'un tableau avec les mêmes propriétés que les autres?

Par exemple: J'ai deux NSMutableArray . Un @[1,2,3,4,5,6,7] . D'autres ont des objects comme

 @[ @{@idObjectToSearch":1, @"name":@"aaaaa", @"surname": @"bbbbb"}, @{@idObjectToSearch":2, @"name":@"aaaaa", @"surname": @"ccccc"}, ... @{@idObjectToSearch":100, @"name":@"aaaaa", @"surname": @"cccdcd"} ]; 

Alors, comment puis-je extraire les objects nécessaires à partir du deuxième tableau de manière plus efficace?

Vous devez utiliser NSPredicate avec votre deuxième tableau.

 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"idObjectToSearch IN %@", firstArray]; //In above predicate instead of passing `1` you need to pass object from first array that you want. NSArray *filterArray = [secondArray filteredArrayUsingPredicate:predicate]; //Now access Array objects if (filterArray.count > 0) { NSLog(@"%@",filterArray); } 

Tu peux le faire comme ça

 NSMutableArray * arrSorted = [NSMutableArray new]; for(int i=0;i<arr.count;i++) { NSPredicate *predicate = [NSPredicate predicateWithFormat:@"idObjectToSearch == %@", firstArray[i]]; NSUInteger index = [secondArray indexOfObjectPassingTest:^(id obj, NSUInteger idx, BOOL *stop) { return [predicate evaluateWithObject:obj]; }]; if (index != NSNotFound) { [arrSorted addObject:[arrM objectAtIndex:index]]; } } 

arrSorted contiendra vos données sortingées