这两行代码都有效,但并不像我期望的那样。第一个,使用变量仅跳过表的第一项并更新所有剩余项。在第二个选项中使用字符串文字不会按照我想要的方式工作。为什么会发生这种情况?
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"myString == %@", date];
OR
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"myString == '5/24/14'"];
答案 0 :(得分:1)
要了解原因,请尝试记录date
:
NSLog(@"%@", date);
你会看到结果字符串(在控制台中)看起来不像'5/24/14'
!但是(您在控制台中看到的)是您在第一个代码中使用的字符串。
所有关于 NSDate如何覆盖NSString。怎么解决这个问题?使用NSDateFormatter将日期转换为您所追求的形式的字符串!