我有一个数组,其中包含多个字典。
格式如下:-
数组
-索引
-DOW =工作日
-索引
-DOW =周末
-索引
-DOW =工作日
我想只用包含DOW = Weekday的那些词典中的数据填充表。
枚举的最快方法是什么?
请注意,数据将通过过滤器进行更改,然后重新加载表。
最佳答案
您可以使用NSPredicate
过滤数组,如下所示:
NSArray *data = @[
@{@"Dow":@"Weekday", @"One":@"Two"} // Item 0
, @{@"Dow":@"Weekend", @"Three":@"Four"} // Item 1
, @{@"Dow":@"Weekday", @"Five":@"Six"} // Item 2
];
NSPredicate *pred = [NSPredicate predicateWithFormat:@"(Dow=='Weekday')"];
NSArray *res = [data filteredArrayUsingPredicate:pred];
上面的代码将保留
NSArray
的项目0和2,并删除项目1,因为它不包含将@"Dow"
设置为@"Weekday"
的条目。上面的
data
变量表示示例中的预过滤数据。