例如:NSDateComponents *dueDate
实体具有Task *
(可转换)属性。并且打算获取所有NSDate *
值小于dueDate
的[NSDate date]
值的对象。 NSDateComponents
对象由日历单位常量NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit
创建。[NSPredicate predicateWithFormat:@"dueDate < %@", [NSDate date]]
类型不匹配。如何在等式之前从NSDate
创建dueDate
对象?
还是有更好的方法比较NSDateComponents
?
最佳答案
谓词应如下所示:
[NSPredicate predicateWithFormat:@"%@ < %@", [dueDate date], [NSDate date]]
但是,如果您只想比较谓词之外的日期,则可以像这样比较它们:
if ([[dueDate date] compare:[NSDate date]] == NSOrderedAscending){
//Then dueDate is earlier than [NSDate date],
}
您也可以使用
NSOrderedSame and NSOrderedDescending
关于objective-c - 核心数据:NSPredicate,对象由实体对象组成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9633572/