【发布时间】:2026-01-08 01:00:01
【问题描述】:
我有NSManagedObject 的NSNumber * year 属性,它在数据模型中的类型是Integer 16。
我尝试与NSPredicate 核对今年的情况,但找不到合适的。
我尝试了什么:
NSPredicate *p = nil;
NSNumberFormatter *nf = [[NSNumberFormatter alloc] init];
NSNumber *yearNo = [nf numberFromString:term];
if (yearNo) {
p = [NSPredicate predicateWithFormat:@"(cars.year == %i)", yearNo.intValue];
}
我也试过了:
NSPredicate *p = nil;
NSNumberFormatter *nf = [[NSNumberFormatter alloc] init];
NSNumber *yearNo = [nf numberFromString:term];
if (yearNo) {
p = [NSPredicate predicateWithFormat:@"(cars.year == %@)", yearNo];
}
在这两种情况下,应用都会崩溃。
【问题讨论】:
-
向我们展示获取请求或崩溃日志。
标签: objective-c core-data ios6 nspredicate