我正在尝试理解Objective C中的谓词,但是我一直在弄清楚以下谓词的作用:
$NSPredicate *predicate = [NSPredicate predicateWithFormat:@"holder.valueOfAssets > 70"];
更多具体来说,我不明白点(。)运算符的作用。给出一些上下文:“holder”是一个指向对象的指针,该对象有一个名为“valueOfAssets”的方法。
非常感谢帮助!
答案 0 :(得分:0)
假设您有一个CoreData类Person,person具有name,age和child等属性,这是与Person类的关系。接下来你想要一个获取请求,抓住一些持久的Person对象,让他们的孩子年龄等于18
NSPredicate = [NSPredicate predicateWithFormat@"child.age == %@", [NSNumber numberWithInt:18]];
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Person"];
[fetchRequest setPredicate:predicate];
NSArray *filteredPeople = [[self managedObjectContext] executeFetchRequest:fetchRequest error:nil];
基本上,点语法用于执行子对象属性的操作。