问题描述
我正在使用运算符“==”比较两个日期,即使两个日期相同,表达式返回 false
以下是我进行比较的方法:
date1 == date2 // this returns false
date1 < date2 // this returns true
但是,如果我对日期进行以下检查,它会返回 True
date1.timeIntervalSince1970 == date2.timeIntervalSince1970 // returns true
即使日历检查粒度设置为纳秒也返回 true
Calendar.current.isDate(date1,equalTo: date2,toGranularity: .nanosecond) // this also returns true
所以我想知道为什么比较运算符返回 false。
上下文: 我正在尝试使用以下谓词在核心数据记录中查找特定日期:
fetchRequest.predicate = nspredicate(format: "rawDate = %@",extractedDate as NSDate)
谁能指出为什么日期可能不相等?因为我花了很多时间调试这个,但仍然没有解决方案
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)