题:
我需要比较2次 - 当前时间和一组.如果设定的时间是将来,请查看剩余的时间,直到所述未来时间.
其他信息:
我目前正在使用
let date = NSDate()
let calendar = NSCalendar.currentCalendar()
let components = calendar.components(.CalendarUnitHour | .CalendarUnitMinute, fromDate: date)
let hour = components.hour
let minutes = components.minute
Run Code Online (Sandbox Code Playgroud)
我从SO的另一个答案中偷走了如何以Int格式获取当前时间.然后我将未来的时间分成小时(Int)和分钟(Int)并比较那些......但是当你超过小时障碍时,这会变得奇怪.
Duy*_*Hoa 23
您有比较功能来比较2 NSDate以了解哪一个更新.它返回NSCompareResults
enum NSComparisonResult : Int {
case OrderedAscending
case OrderedSame
case OrderedDescending
}
Run Code Online (Sandbox Code Playgroud)
从2 NSDate获得距离(以秒为单位),你有.timeIntervalSinceDate().然后,你知道如何转换为分钟,小时,......
let date1 : NSDate = ...
let date2 : NSDate = ...
let compareResult = date1.compare(date2)
let interval = date1.timeIntervalSinceDate(date2)
Run Code Online (Sandbox Code Playgroud)
Mic*_*ael 10
只是为了添加@ tyt_g207的答案,我找到了比较方法,但没有找到NSComparisonResult.OrderedDescending和其他人一样.我使用类似下面修改的内容来检查今天的日期到期日期
let date1 : NSDate = expirationDate
let date2 : NSDate = NSDate() //initialized by default with the current date
let compareResult = date1.compare(date2)
if compareResult == NSComparisonResult.OrderedDescending {
println("\(date1) is later than \(date2)")
}
let interval = date1.timeIntervalSinceDate(date2)
Run Code Online (Sandbox Code Playgroud)
小智 5
let dateComparisionResult: NSComparisonResult = currentDate.compare("Your Date")
if dateComparisionResult == NSComparisonResult.OrderedAscending
{
// Current date is smaller than end date.
}
else if dateComparisionResult == NSComparisonResult.OrderedDescending
{
// Current date is greater than end date.
}
else if dateComparisionResult == NSComparisonResult.OrderedSame
{
// Current date and end date are same.
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24025 次 |
| 最近记录: |