Ios Swift 3-模糊使用<;比较两个日期时的运算符
在swift中比较两个日期时,我可以使用>,但不能使用=startTime&&Date() { ... } 给出了<运算符错误的模糊用法 //工作代码 如果日期()>=开始时间和结束时间>日期() { ... } 这不起作用有什么具体原因吗 我在查找apple文档时发现了这个示例,他们实际上使用了这段代码 我开始怀疑,这可能是因为使用了&&运算符,或者可能只是因为顺序问题,甚至是因为代码本身就是这样Ios Swift 3-模糊使用<;比较两个日期时的运算符,ios,swift,nsdate,swift3,Ios,Swift,Nsdate,Swift3,在swift中比较两个日期时,我可以使用>,但不能使用=startTime&&Date() { ... } 给出了=开始时间和结束时间>日期() { ... } 这不起作用有什么具体原因吗 我在查找apple文档时发现了这个示例,他们实际上使用了这段代码 我开始怀疑,这可能是因为使用了&&运算符,或者可能只是因为顺序问题,甚至是因为代码本身就是这样 if startTime < endTime {...} 如果开始时间=startTime)&(Date()
if startTime < endTime {...}
如果开始时间<结束时间{…}
但它返回相同的顺序
显然,我已经找到了解决办法,但我很好奇为什么会发生这种情况 您可能已经扩展了
NSDate
,以符合Swift 2中的类似协议。只需删除它,因为Date
现在符合Swift3中的类似协议。尝试if(Date()>=startTime)&(Date()
@LeoDabus我应该把这个放在上面的代码中,我真的试过了,表现得像它想工作一样,然后在10-12秒后编译器返回并给出了相同的错误。我试过的另一件事是将每个特定的日期转换为一个日期,我在其他地方看到了。我怀疑你已经扩展了NSDate以符合类似的protocol,日期不需要它(Swift 3)@LeoDabus我想我已经评论过了!非常感谢,我正在修复从swift 3到swift 3的所有错误,并且在扩展中出现错误之前遇到了这些错误。@LeoDabus可以将其作为一个答案,我会接受它。当一些来自互联网的随机家伙比我更了解我的代码时……这里的情况完全相同:比较两个日期;<抱怨模棱两可,while>有效。事实上,NSDate之前被扩展,并使其符合Compariable(由编写该应用程序的Swift2.x版本的人编写)而if startTime < endTime {...}