我有一个modelArr:如何过滤模型的属性?
NSArray<MyModel *> *modelArr = xxx;
而在MyModel
,拥有的财产,如type
。
如何过滤modelArr
以获得新的阵列只有相同的type
?
我有一个modelArr:如何过滤模型的属性?
NSArray<MyModel *> *modelArr = xxx;
而在MyModel
,拥有的财产,如type
。
如何过滤modelArr
以获得新的阵列只有相同的type
?
您可以使用NSPredicate
。
比较type
属性具有特定的值。
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"type = %@", searchType];
NSArray *filterArray = [modelArr filteredArrayUsingPredicate:predicate];
如果你想检查type
属性包含特定的值比
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"type contains[cd] %@", searchType];
NSArray *filterArray = [modelArr filteredArrayUsingPredicate:predicate];
你可以使用NSPredicate,请使用此代码
NSPredicate *bPredicate = [NSPredicate predicateWithFormat:@"SELF.name contains[cd] %@",self.searchText.text];
self.filteredArray = [self.hotelArray filteredArrayUsingPredicate:bPredicate];
NSLog(@"HERE %@",self.filteredArray);`
试试这个
NSArray *uniqueNames = [modelArr valueForKeyPath:@"@distinctUnionOfObjects.type"];