2
我正在尋找一種方法來比較兩個NSMutableArray對象的內容。這兩個數組都填充了NSMutableDictionaries,它們分開分配,但偶爾包含相同的數據。比較NSMutableArray元素的值
簡化的例子:
NSMutableArray *firstArray = [[NSMutableArray alloc] init];
NSMutableArray *secondArray = [[NSMutableArray alloc] init];
NSMutableDictionary *a = [[NSDictionary alloc] init];
[a setObject:@"foo" forKey:"name"];
[a setObject:[NSNumber numberWithInt:1] forKey:"number"];
NSMutableDictionary *b = [[NSDictionary alloc] init];
[b setObject:@"bar" forKey:"name"];
[b setObject:[NSNumber numberWithInt:2] forKey:"number"];
NSMutableDictionary *c = [[NSDictionary alloc] init];
[c setObject:@"foo" forKey:"name"];
[c setObject:[NSNumber numberWithInt:1] forKey:"number"];
[firstArray addObject:a];
[firstArray addObject:b];
[secondArray addObject:c];
a,b和c是不同的對象,但a和c匹配的內容。
我在找什麼是比較firstArray和secondArray並僅返回b的函數/方法。
僞代碼:
NSArray *difference = [self magicFunctionWithArray:firstArray andArray:secondArray];
NSLog(@"%@",difference)
=> ({name="bar"; number=2})
預先感謝您。
您是不是指'secondArray'裏面有'a'和'b'?因爲現在它只是空的,我不確定爲什麼第二個元素是特殊的。 – Chuck 2011-06-14 17:59:13
謝謝你指出。 'secondArray'是爲了包含'c'。修復了代碼示例以反映這一點。 – 0x90 2011-06-14 18:18:02