我必須包含NSMutableDictionary
s的2 NSMutableArray
s。我需要驗證其他數組中存在的其中一個數組中的字典。我怎樣才能做到這一點?ios如何比較nsmutablearray中的nsdictionary
0
A
回答
4
我不確定這是否是最好的方法,但它很容易。我創建了一個方法來驗證NSArray
內是否存在NSDictionary
。在這個函數內部,我將NSDictionary
s轉換爲NSString
並對它們進行比較。
- (BOOL)verifyIfDictionary:(NSDictionary *)dict existsInsideArray:(NSArray *)array
{
BOOL result = NO;
NSString *dictStr = [NSString stringWithFormat:@"%@",dict]; // convert dictionary to string
for (NSDictionary *d in arrayOfDictionaries)
{
NSString *dStr = [NSString stringWithFormat:@"%@",dict]; // same conversion as above conversion
// now, I just have to compare the resulting strings
if ([dictStr isEqualToString:dStr])
result = YES;
}
return result;
}
現在你只需要通過你的NSArray
S的一個迭代,用這種方法,像這樣:
NSArray *arrayOfDictionaries1;
NSArray *arrayOfDictionaries2;
// initialize them, fill with data, do your processing.. etc, etc...
// then, when you want to verify:
for (NSDictionary *dict in arrayOfDictionaries1)
{
if ([self verifyIfDictionary:dict existsInsideArray:arrayOfDictionaries2])
{
NSLog(@"exists!");
}
}
0
要檢查是否array1
包含array2
所有項目:
NSMutableArray *mutableArrayToCheck = [array2 mutableCopy];
[mutableArrayToCheck removeObjectsInArray:array1];
if (array2.count > 0 && mutableArrayToCheck.count == 0) {
// array2 contains all the items in array1
}
忽略的陣列爲第二的內容的類型,只是覺得數字。我們有2個數組:
array1 = [ 1, 2, 3 ]
array2 = [ 1, 3 ]
如果我們從數組2刪除陣列1的項目,結果是一個空數組,然後我們知道,所有的數組2的項目也分別在陣列1。
removeObjectsInArray:
通過搜索數組和比較每個項目,爲我們做到這一點。我們只需要檢查結果。
無論數組的內容是什麼,只要它們實現了hash
和isEqual:
,這都可以工作。
相關問題
- 1. IOS比較兩個NSMutableArray的
- 2. 的NSDictionary內的NSMutableArray(IOS)
- 3. 如何比較兩個NSMutableArray?
- 4. 比較NSDictionary
- 5. NSDictionary:比較NSDictionaries
- 6. 的NSMutableArray到NSDictionary中的iOS 3.1.3問題
- 7. 比較兩個NSMutableArray
- 8. 比較複雜的NSDictionary
- 9. 的NSDictionary:比較後MutableCopy
- 10. 的NSDictionary和比較SetObjects
- 11. 比較NSMutableArray元素的值
- 12. 如何將含有NSDictionary的NSMutableArray複製到另一個NSMutableArray中
- 13. 的NSMutableArray NSDictionary的從
- 14. 的NSDictionary到NSMutableArray的
- 15. iPhone - 的NSDictionary - NSMutableArray的
- 16. ADDOBJECT NSMutableArray的一個NSDictionary中
- 17. 比較字符串中的NSDictionary
- 18. 在NSDictionary中比較相同的鍵值
- 19. NSDictionary鍵比較失敗
- 20. NSDictionary到1 NSMutableArray
- 21. 如何比較iOS中的位圖?
- 22. 如何比較iOS中的NSDecimalNumber
- 23. 使用塊比較NSMutableArray
- 24. iOS - 如何比較兩次?
- 25. NSArray的比較與NSMutableArray中添加三角洲對象的NSMutableArray
- 26. 從NSMutableArray中提取NSDictionary
- 27. 如何比較NSMutableArray中的NSTimeInterval(NSNumber對象)?
- 28. 如何將NSDictionary對象添加到NSMutableArray?
- 29. 如何在iOS中比較兩次
- 30. 排序的NSMutableArray從NSDictionary的
可你explaing這條線的工作原理[mutableArrayToCheck removeObjectsInArray:數組1]。以及如何比較數組? – HelenaM