从两个数组中获取唯一的数字
如果我有几个NSArrays填入整数或NSNumbers ,如下所示:
A: { 12, 23, 45, 56, 67, 78, 99, 234 } B: { 12, 56, 78, 99, 454, 512 }
如何输出数字在A中,但不在B中的数组
{ 23, 45, 67, 234 }
你所要做的纯粹是一套操作。 所以你可以在这里使用NSSet 。 你应该做minusSet:
来得到你想要的结果。
NSMutableSet *resultSet = [NSMutableSet setWithArray:A]; NSSet *setB = [NSSet setWithArray:B]; // This is what you need! [resultSet minusSet:setB]; Array *result = [resultSet allObjects];
创build一个名为C的NSMutableArray。在A上执行一个循环,试图在B中find它的每个元素(使用[B containsObject:elemOfA]
, -isEqual:elemOfA
向B的每个成员发送-isEqual:elemOfA
消息)。 如果find一个元素,什么都不要做; 如果找不到元素,则将其添加到C.