在核心数据中,我使用fetchRequest和谓词进行搜索,如下所示
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription
entityForName:@"Study"
inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:
@"( StudyID == %@ )",self.StudyID]];
NSArray * StudyList = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];
如何检查是否有返回值
答案 0 :(得分:1)
做类似的事情:
if(!StudyList){
//handle fetch request error here
} else {
//success!
if([StudyList count] > 0){ //if array not empty
//do stuff with StudyList contents here
NSLog(@"StudyList contents: %@", StudyList);
}
}
希望有所帮助。
答案 1 :(得分:1)
您可以检查StudyList
数组的大小:
if ([StudyList count]>0){
//... found at least one Study object
}else{
//... didn't find anything
}
顺便说一句,您应该遵循命名约定。像StudyList
这样的变量应该从小写开始编写,即studyList
。按照惯例,以大写字母开头的名称表示某种常数,例如:类,实体,常量等。
答案 2 :(得分:0)
请阅读该方法的文档:
如果发生错误,则返回nil。如果不 对象符合指定的条件 按请求,返回一个空数组。