1

假设我有一个像这样的 NSDictionary 的 NSMutableArray(每一行都是字典):

     key count type
 0    1   1     Apple
 1    1   2     Banana
 2    2   1     Pear
 3    3   4     Ananas

假设我会找到键 1 的所有水果。简单而粗暴的方法是枚举 NSMutableArray 并仅找到那些具有 as key = 1 的 NSDictionary。有更好或更智能的方法吗?(数据来自 SQL 查询)。

4

2 回答 2

3

您可以尝试使用以下filteredArrayUsingPredicate:方法NSArray

// Supposing originalArray is an NSArray holding the NSDictionaries that represent the fruits
NSArray *filteredArray = [originalArray filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"key == %@", @1]];

filteredArray现在将保存所有带有1as 键的字典。

于 2013-07-30T13:00:39.273 回答
0
NSArray *data = [NSArray arrayWithObject:[NSMutableDictionary dictionaryWithObject:@"1" forKey:@"YourKey"]];
    NSArray *filtered = [data filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"(YourKey == %@)", @"1"]];

    NSLog(@"%@",filtered);

试试这个可能对你有帮助..

于 2013-07-30T13:04:27.180 回答