此代碼比較兩個創建的NSDate
,它們並不像我所期望的那樣輸入.OrderedSame
。創建兩個相鄰的NSDates並不相等
import UIKit
let chosenDate = NSDate()
let currentDate = NSDate()
let formatter = NSDateFormatter()
formatter.dateFormat = "EEEE"
let day = formatter.stringFromDate(chosenDate)
var result = String()
switch chosenDate.compare(currentDate) {
case .OrderedSame:
result = "Today is a \(day)"
break
case .OrderedAscending:
result = "That was a \(day)"
break
case .OrderedDescending:
result = "That will be a \(day)"
break
}
print(result)
每當我運行這個(在操場或[我把它放到操場,從我的項目文件來測試的東西在模擬器),它給了我「這是一個(插天在這裏),而不是「今天是(插入日在這裏)。爲什麼是這樣?
只是*打印*日期不會顯示差異,因爲默認描述方法不包括小數秒。但關於'compareDate:toDate:toUnitGranularity:'的好建議! –