О, даааа. Теперь я понимаю вашу проблему.
Обратный порядок, в котором сравниваются ваши массивы. Если вы хотите узнать, какие строки в newbig не существуют в newsmall, сначала переберите newbig, чтобы посмотреть, какое перечисленное слово в newbig существует в newsmall.
Код выглядит следующим образом (изменились только две строки кода):
NSMutableArray *noDup = [[NSMutableArray alloc]init];
NSMutableArray *dup = [[NSMutableArray alloc]init];
for (NSString *first in newbig)
{
BOOL hasfound = NO;
//NSLog (@"first %@", first);
for (NSString *second in newsmall)
{
//NSLog (@"second %@", second);
if ([second isEqualToString:first])
{
[dup addObject:first];
hasfound = YES;
break;
}
}
if (!hasfound)
{
//NSLog (@"has not found %@", first);
[noDup addObject:first];
}
}
Видите тонкую разницу?