次の2つの配列があります。
NSArray *array1=[[NSArray alloc]initWithObjects:@"ABC",@"DEF", nil];
NSArray *array2=[[NSArray alloc]initWithObjects:@"ABC",@"123",@"DEF",@"DEF", nil];
ここで、各 array1 のオブジェクトと array2 を検索し、一致するインデックスを取得する必要があります。私のアプリケーションには、array2 に 1,000 個を超えるオブジェクトが含まれています。
最初の for ループに 2 番目の for ループを配置する以外の最善の方法を提案してください
for (int i=0; i<array1.count; i++)
{
//Need to search the [array1 objectAtIndex:i] string in array2 and need to get the matched indexes into an array in best optimised way here.
NSMutableArray *matchedIndexesArray=[[NSMutableArray alloc]init];
NSString *stringToSearch=[array1 objectAtIndex:i];
//here i can put another array like below to get the matched indexes..but is there any optimized way other than this for loop here? or is there any simple inbuilt method to get the matched objects into an array here.
for (int j=0; j<array2.count; j++)
{
if ([stringToSearch isEqualToString:[array2 objectAtIndex:j]])
{
[matchedIndexesArray addObject:[NSString stringWithFormat:@"%d",j]];
}
}
NSLog(@"matchedIndexesArray-->%@<--",matchedIndexesArray);
//I will use this matchedIndexesArray here further processing...
//
//
//
//Large Code Here
//
//
//
}