我需要在 Swift 中比较两次并使用 NSComparisonResult 我可以得到正确的结果,直到它到达晚上 10 点到晚上 11:59 之间的时间。它显示了这些时间的相反结果。有谁知道这是什么问题?下面是示例代码和场景。晚上 10:30:00 是测试的示例时间,但您可以随时对其进行测试。
// For test, Current time 10:30:00 PM
let currentTime = NSDateFormatter.localizedStringFromDate(NSDate(), dateStyle: .NoStyle, timeStyle: .LongStyle)
let closeTimeCompareResult: NSComparisonResult = currentTime.compare("10:00:00 PM EDT")
print("DinnerClose: \(closeTimeCompareResult.rawValue)")
// Expected result is -1 but, getting as 1
// It works perfect until 9:59:59 PM
let closeTimeCompareResult9: NSComparisonResult = currentTime.compare("9:00:00 PM EDT")
print("DinnerClose: \(closeTimeCompareResult9.rawValue)")
// As expected result is -1