过滤字典数组。 Dictionary有另一个数组作为其键值对。基于该数组中存在的键过滤数组

时间:2016-06-03 07:35:04

标签: ios objective-c nspredicate

我的数组结构是这样的

    Array1
    [
    Dict 1:
    Key1 = Value1
    Key2 = Array2 
                [Key3 = Value1]

    Dict 2:
    Key1 = Value1
    Key2 = Array2 
                [Key3 = Value2”]

    Dict 3:
    Key1 = Value1
    Key2 = Array2 
                [Key3 = Value2]
Dict 4:
    Key1 = Value1
    Key2 = Array2 
                [Key3 = Value2]

    ]

我想基于key3过滤数组,key3作为key2的值存在于数组中。 这可能吗?

1 个答案:

答案 0 :(得分:0)

如果您的Key3是Key2中的字典而不是数组,您可以使用:

NSSortDescriptor *sort = [[NSSortDescriptor alloc] initWithKey:@"Key2.Key3" ascending:YES];
NSArray *sortedArray = [array sortedArrayUsingDescriptors:[NSArray arrayWithObjects:sort, nil]];

也许您可以提取要排序的Key3值,然后使用包含排序键和值数组的字典。