假设我有一个NSDictionary的NSMutableArray(每行都是字典):
key count type
0 1 1 Apple
1 1 2 Banana
2 2 1 Pear
3 3 4 Ananas
假设我会找到关键字1的所有结果。简单而粗野的方法是枚举NSMutableArray并只找到那些具有key = 1的NSDictionary。 有更好或更聪明的方式吗? (数据来自SQL查询)。
答案 0 :(得分:3)
您可以尝试使用filteredArrayUsingPredicate:
的{{1}}方法:
NSArray
// Supposing originalArray is an NSArray holding the NSDictionaries that represent the fruits
NSArray *filteredArray = [originalArray filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"key == %@", @1]];
现在将以filteredArray
作为关键字保存所有词典。
答案 1 :(得分:0)
NSArray *data = [NSArray arrayWithObject:[NSMutableDictionary dictionaryWithObject:@"1" forKey:@"YourKey"]];
NSArray *filtered = [data filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"(YourKey == %@)", @"1"]];
NSLog(@"%@",filtered);
尝试这个可能对你有所帮助..