过滤使用自定义对象属性的数组

我有一个对象数组。每个对象都有自己的属性(名称,desc,状态)。 namedescNSStringstatusBOOL

我想通过状态属性来过滤这个数组。 例如:获取status == YES所有对象。

我怎样才能做到这一点?

尝试使用NSPredictate

 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"status = %@", @"YES"]; NSArray *filterArray = [array filteredArrayUsingPredicate:predicate]; 

这给你一个数组,其中状态是等于YES的所有对象。

尝试这个,

 NSPredicate *predicate =[NSPredicate predicateWithFormat:@"status = YES"]; NSArray *filteredArray = [yourArray filteredArrayUsingPredicate:predicate]; 

嗨,你可以试试这个,

 NSMutableArray *array =[NSMutableArray arrayWithObjects:@"Apple", @"Animal", @"baby", @"ball", nil]; NSPredicate *aPredicate = [NSPredicate predicateWithFormat:@"SELF beginswith[a] 'b'"]; NSArray *beginWithA = [array filteredArrayUsingPredicate:aPredicate]; The beginWithA array will have { @"Apple", @"Animal" }. NSPredicate *bPredicate = [NSPredicate predicateWithFormat:@"SELF contains[b] 's'"]; [array filterUsingPredicate:bPredicate]; The array will have { @"baby", @"ball" } 

谢谢