我有兩個不同的NSMutabelArray ArrOne和ArrTwo。 Letsay ArrOne = A,B,C和D ArrTwo = C,D,X和Y.所以我需要檢查ArrTwo的值是否與ArrOne相同,並且如果它與ArrOne中的ArrTwo不相同,則從ArrTwo中刪除項目。在這種情況下,我必須從ArrTwo中刪除X和Y.請給我一個主意。如何檢查數組值不存在於另一個陣列中
1
A
回答
1
我發現了一個解決方案,它的工作原理
for (int i=0; i< arrTwo.count; i++)
{
if(![arrOne containsObject:[arrTwo objectAtIndex:i]])
{
//do action
NSLog(@"do delete %@",[arrTwo objectAtIndex:i]);
}
}
謝謝!
4
NSMutableSet *set = [NSMutableSet setWithArray:arrOne];
[set intersectSet:[NSSet setWithAray:arrTwo];
return [set allObjects];
3
你可以用indexesOfObjectsPassingTest做到這一點,就像這樣:
NSMutableArray *a = [@[@"A",@"B",@"C",@"D"] mutableCopy];
NSMutableArray *b = [@[@"C",@"D",@"X",@"Y"] mutableCopy];
NSIndexSet *indxs = [b indexesOfObjectsPassingTest:^BOOL(NSString *obj, NSUInteger idx, BOOL *stop) {
return ![a containsObject:obj];
}];
[b removeObjectsAtIndexes:indxs];
相關問題
- 1. 檢查在陣列中的多個值與另一個數組
- 2. 如何檢查結果數組元素存在於另一個結果陣列
- 3. 如何檢查數組的任何值存在於另一個數組php?
- 4. 如何檢查,如果數組關鍵值存在於另一個數組
- 5. 如何檢查一個數字不存在於數組中?
- 6. 濾波器陣列如果元素存在於另一個數組基於值
- 7. 檢查是否大於一個數值大於在2D陣列中存在
- 8. 檢查數組值是否存在於其他陣列
- 9. PHP的檢查,如果值exsist在陣列,在另一陣列
- 10. 檢查數組的鍵是否存在另一個數組值
- 11. 檢查是否在一個ArrayList中值存在於另一個
- 12. 如何檢查數組中的任何值是否存在於角度js中的另一個數組中?
- 13. 如何檢查數組中某個鍵的值是否存在於另一個數組中?
- 14. 檢查列值是否存在於SQL的另一列中
- 15. 陣列,檢查值存在
- 16. 如何打印存儲在另一個陣列中的數組值
- 17. 檢索列中不存在於另一列中的所有值
- 18. 從另一個陣列查詢數組
- 19. 檢查是否在一個陣列中的所有串存在於另一個陣列
- 20. 檢查數組值是否存在於另一個數組中,如果不存在,則用另一個值替換
- 21. 檢查數組值是否存在於另一個表的表中
- 22. 檢查一個數組中的所有值是否存在於另一個數組中
- 23. 檢查另一個陣列列表中的陣列列表
- 24. angularjs檢查數組值是否在另一個數組中
- 25. 如何檢查值是否存在一個數組中的Jquery
- 26. 如何檢查一個值是否存在於JavaScript中的數組中?
- 27. SQL約束檢查值是否不存在於另一個表
- 28. 數組值來檢查PHP中的另一個數組值?
- 29. 檢查數組在另一個數組
- 30. VBA使用另一個數組在一個陣列中查找值
問題在哪裏?難道你不能通過ArrTwo循環,然後檢查每個元素是否在ArrOne中,如果不是,只是刪除它? – SIGKILL 2013-03-08 02:50:14
試試這個[解決方案](http://stackoverflow.com/a/15269497/1635315)。這對我有用。 :) – iKT 2015-12-06 19:58:29