简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取。

来源:互联网 发布:智能小车惯性导航算法 编辑:程序博客网 时间:2024/06/07 09:01
<pre name="code" class="objc">@interface person : NSObject@property (nonatomic,weak) NSString *name;@property (nonatomic,weak) NSString *age;@end@implementation person@end@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];    // Do any additional setup after loading the view, typically from a nib.        NSArray *name = @[@"A",@"B",@"C",@"A",@"E"];    NSArray *age = @[@"21",@"22",@"22",@"24",@"43"];            NSMutableArray *workers = [NSMutableArray array];        [name enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {                person *pp = [[person alloc]init];        pp.name = name[idx];        pp.age = age[idx];                [workers addObject:pp];        }];            NSPredicate *fiter = [NSPredicate predicateWithFormat:@"(age >= '23') AND name = 'A'"];    NSLog(@"%@",[workers filteredArrayUsingPredicate:fiter]);    }

// 对NSArray进行过滤 NSArray *array = [[NSArray alloc]initWithObjects:@"beijing",@"shanghai",@"guangzou",@"wuhan", nil]; NSString *string = @"ang"; NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF CONTAINS %@",string]; NSLog(@"%@",[array filteredArrayUsingPredicate:pred]);

0 0
原创粉丝点击