我有一個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"];